maven部署项目到远程服务器

时间:2022-01-04 13:17:54

在项目部署的过程中,通常需要打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/*)

其中红色内容中usernamepassword可以修改为自己合适的。

 

 

二、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文件地址,ideaweb,eclipsewebRoot-->

                            <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文件