在项目部署的过程中,通常需要打war包,在将war包远程拷贝到目的服务器。操作有点麻烦,也是能接受。
不过有了一种更方便的操作:是IDEA通过maven将打好的war直接部署到远程服务器的步骤。
一、在安装的Tomcat目录下找到/conf/tomcat-user.xml这个文件,在文件的末尾添加以下ho红色内容:
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin"/>
<role rolename="manager"/>
<user username="tomcat" password="tomcat"
roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui,admin,manager"/>
Ps:
manager-gui
允许访问html接口(即URL路径为/manager/html/*)
manager-script
允许访问纯文本接口(即URL路径为/manager/text/*)
manager-jmx
允许访问JMX代理接口(即URL路径为/manager/jmxproxy/*)
manager-status
允许访问Tomcat只读状态页面(即URL路径为/manager/status/*)
其中红色内容中username和password可以修改为自己合适的。
二、在web项目的pom文件中添加:tomcat7-maven-plugin插件,在pom文件中添加如下红色内容:
<!--tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<!-- tomcat地址,manager/text该地址可追加命令-->
<!--http://localhost:8080/manager/stop?path=/ //停止--> <!--http://localhost:8080/manager/start?path=/ //启动-->
<!--http://localhost:8080/manager/text/deploy?path=/ //部署-->
<!--http://localhost:8080/manager/text/undeploy?path=/ //卸载-->
<url>http://localhost:8080/manager/text</url><!--远程服务器url-->
<username>tomcat</username>
<password>tomcat</password>
<!-- 此处的名字是项目发布的工程名-->
<path>/webDemo</path>
</configuration>
</plugin>
<!-- war插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<webResources>
<resource>
<!-- WEB-INF文件地址,idea是web,eclipse是webRoot-->
<directory>\src\main\webapp</directory>
</resource>
</webResources>
</configuration>
</plugin>
三、在确认你的服务器上tomcat是开启的状态下,确认使用你配置的用户名和密码是可以登录http://localhost:8080/manager的(这是我测试使用的本地tomcat),否则会报错。
Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin:2.1:deploy (default-cli) on project webDemo: Cannot invoke Tomcat manager: Connection to http://localhost:8080 refused: Connection refused: connect -> [Help 1]
四、
成功登录后,即可远程部署你的项目了,在你的web项目中使用命令即可:
mvn tomcat7:deploy
五、附上pom.xml文件