由于 Maven 为 Tomcat7 提供了插件之后,并未发现其在 Tomcat8 或更高版本中有提供合适的版本可直接配置。对于想要使用 Maven 自动部署项目到 Tomcat8 或更高版本的童鞋,请参考以下整理的可行方案。
第一步:配置 Tomcat 访问权限
首先,我们需要先打开 Tomcat 的 manager 功能,找到 conf 文件夹下的 tomcat-users.xml
文件中的 <tomcat-users>
标签,然后添加如下内容(可以直接在其文档注释部分找到对应的模版,然后进行修改):
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user password="1234" username="admin"
roles="manager-gui,manager-script,manager-jmx,manager-status" />
配置好之后,ctrl+s
保存文件。紧接着,双击 tomcat 解压包中 bin 目录下的 startup.bat
命令进行启动Tomcat服务器。在浏览器地址来中进行访问http://localhost:8080/manager,
按下 Enter
回车键,即可看到弹窗,需要我们输入上面配置好的用户名和密码,才能进行登录,如果顺利则请进入下一步。
第二步:配置maven的settings.xml
在 conf/settings.xml
文件中的标签 <servers>
添加子标签。通过标签名字,我们知道这主要是为了让 maven 去关联我们的 Tomcat 服务器。
注意,这里配置的 username 和 password 一定要和 tomcat 中的 tomcat_user.xml 中一致,否则关联不起来。
<server>
<id>tomcat8</id>
<username>admin</username>
<password>1234</password>
</server>
第三步:配置 pom.xml
最后,回到我们的 Eclipse 中,然后在 pom.xml
文件中,在原来 tomcat7 插件的基础上,往 <project>
下添加 <configuration>
子标签进行配置即可。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 直接访问 Tomcat 服务器的 manager -->
<url>http://localhost:8080/manager/text</url>
<server>tomcat8</server>
</configuration>
</plugin>
</plugins>
</build>
第四步:执行命令
1)Run as → clean install
2)Run as → tomcat7:deploy 注:第1次部署执行
3)Run as → tomcat7:redeploy 注:第2次或以后需要重新发布执行
4)Run as → tomcat7:run 注:部署到 tomcat 中启动
到此为止,我们就可以通过 maven 把项目自动部署到 tomcat8+ 版本了。