如何在 IntelliJ IDEA 中整合 Maven、Tomcat 部署 Web 应用
笔者的环境:
JDK 11.0.12Maven 3.6.3Tomcat 9.0.41(Servlet 4.0,JSP 2.3)IntelliJ IDEA .1.2 (Ultimate Edition)
在继续阅读本教程之前,需要先依次完成 JDK、Maven、Tomcat、IntelliJ IDEA 的安装。关于它们的安装,可见笔者编写的其它教程:
JDK 的安装教程:/wangpaiblog/article/details/111466827
Maven 的安装教程:/wangpaiblog/article/details/112689500
在 IntelliJ IDEA 中使用 Maven 构建 Web 应用的方法如图所示:
此处,在 Maven 中选择一个 Web 应用的 archetype(原型)。使用 Maven 原型能减少后续构建项目的工作量。
对图中画圈的地方进行自己喜欢的命名、设置。
此时,需要在图中的 Properties 中添加键值对Name-Value
:
Name
:archetypeCatalog
Value
:internal
如果不添加此键值对,IntelliJ IDEA 将会从 Maven 中央仓库去获取上面选择的 archetype。有过完整安装 Maven 的读者可能知道,这个过程可以十分缓慢。而添加此键值对之后,则获取该 archetype 的方式将变为内部获取,而使用这种方式构建项目的速度将大大提高。
现在,一个标准的 Web 应用的目录已经形成。其中,文件夹 webapp 为应用的部署文件夹。
注意,在部署 Web 应用时,不要改变图中文件夹 WEB-INF 的位置。关于在 IntelliJ IDEA 中 Web 应用目录结构的更多信息及更多的注意事项,可见笔者的另一篇博客:
Tomcat 下构建 Web 应用时,常犯的一些通用错误: /wangpaiblog/article/details/112550144
另外,请删除 Web 应用中的 lib 文件夹,因为这会与 Maven 目录中的文件pom.xml
中的依赖发生冲突,引发 IntelliJ IDEA 报错。关于这个报错,有兴趣的读者可以阅读笔者的另一篇博客:
解决IntelliJ IDEA报错:调用方法[manageApp]时发生异常java.lang.IllegalStateException: 启动子级时出错: /wangpaiblog/article/details/114055212
在 Maven 目录中的文件pom.xml
中设置应用所需要的依赖等信息。一个可供参考的示例,可见笔者的另一个博客:
Maven 配置文件 pom 的常用依赖配置代码: /wangpaiblog/article/details/112797500
现在来配置 Tomcat。
此处选择后缀为war exploded
(热部署)的选项。
然后对图中画圈的地方进行自己喜欢的命名、设置。其中,Application context 项代表 Web 应用的应用名,此部分是访问该 We b应用时,该 Web 应用路径的一个组成部分。
添加 Tomcat 服务器。
注意,添加 Tomcat 服务器时选择的目录是该 Tomcat 服务器的安装目录。
对图中画圈的地方进行自己喜欢的命名、设置。
如果第一次进行这种配置,则还会有 Tomcat 的日志中显示中文乱码的问题,关于这方面的问题,可见笔者的另一个博客:
解决 IntelliJ IDEA 内置的 Tomcat 日志中显示的中文乱码: /wangpaiblog/article/details/115587823?spm=1001..3001.5501
在前面的Web应用部署和Tomcat配置都完成之后,就可以运行该Web应用了。