当前位置:主页 > java教程 > Maven Cargo实现自动化部署

Maven Web项目使用Cargo插件实现自动化部署的详细步骤

发布:2023-03-27 11:20:01 59


给网友朋友们带来一篇相关的编程文章,网友敖涵蓄根据主题投稿了本篇教程内容,涉及到Cargo实现自动化部署、Maven、Web项目自动化部署、Maven Cargo实现自动化部署相关内容,已被440网友关注,如果对知识点想更进一步了解可以在下方电子资料中获取。

Maven Cargo实现自动化部署

Maven

实现Web项目部署到本地Tomcat

下面介绍基于Maven使用cargo插件实现的自动部署。

首先,简单介绍一下 cargo ,它是一组帮助用户实现自动化部署,操作Web容器的工具,并且几乎支持所有的Web容器。它通过cargo-maven2-plugin提供了maven集成,Maven用户使用该插件将Web项目部署到Web容器中,进行功能测试。接着,讲解实现Web项目部署到本地Tomcat,步骤如下:(以 Tomcat 8.5.75Maven 3.6.0MSW项目 为例)

1.第一步,在Maven的全局配置文件 setting.xml 中的pluginGroups节点添加以下配置

< pluginGroup >org.codehaus.cargo< /pluginGroup > 

如图:

2.第二步,使用cargo的existing模式,用户需要指定现有的Web容器配置目录,然后cargo会直接使用这些配置并将应用部署到其对应的位置。

然后在MSW项目的pom.xml下添加以下配置:

<!-- 设置构建 -->
 <build>
     <!-- 设置war包名称 -->
     <finalName>MavenWebProject-Strategy</finalName>

     <plugins>
         <!-- Tomcat自动部署插件 -->
         <plugin>

             <!-- cargo坐标 -->
             <groupId>org.codehaus.cargo</groupId>
             <artifactId>cargo-maven2-plugin</artifactId>
             <version>1.6.8</version>

             <!-- 使用cargo所需的初始信息 -->
             <configuration>
                 <container>
                     <containerId>tomcat8x</containerId>
                     <!-- tomcat本地安装目录 -->
                     <home>D:\Program Files\apache-tomcat-8.5.75</home>
                 </container>

                 <configuration>
                     <!-- cargo部署web项目的模式 -->
                     <type>existing</type>
                     <home>D:\Program Files\apache-tomcat-8.5.75</home>

                     <properties>
                         <!-- 监听端口,默认是8080 -->
                         <cargo.servlet.port>8080</cargo.servlet.port>
                     </properties>
                 </configuration>
             </configuration>

             <!-- cargo执行阶段配置 -->
             <executions>
                 <execution>
                     <id>cargo-run</id>
                     <phase>install</phase>
                     <goals>
                         <goal>run</goal>
                     </goals>
                 </execution>
             </executions>
         </plugin>

         <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-war-plugin</artifactId>
             <version>3.2.2</version>
         </plugin>
     </plugins>
 </build>

3.第三步,在MSW目录下,输入cmd进入命令窗口,输入命令:mvn deploy 。

4.第四步,打开浏览器,输入 http://localhost:8080/MavenWebProject-Strategy/AdminLogin.jsp 测试。如图:

注:MavenWebProject-Strategy 为war包名称,其包已发布在 apache-tomcat-8.5.75\webapps 目录下。

5.最后,测试完成后,按 ctrl + c 终止批处理操作。如图:

5.

实现Web项目远程部署到Tomcat

接下来,我们来实现Web项目远程部署到Tomcat。

1.首先,我们在Maven的全局配置文件 setting.xml 中的servers节点添加以下配置

<server>
	<id>tomcat8x</id>
	<username>admin</username>
	<password>admin</password>
</server>

如图:

2. 打开 apache-tomcat-8.5.75\conf 目录下的 tomcat-users.xml ,在tomcat-users节点添加以下配置

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<user username="admin" password="admin" roles="admin-gui,manager-gui,manager-script,manager-status"/>

如图:

3.设置允许远程访问,打开 apache-tomcat-8.5.75\webapps\manager\META-INF 目录下的 context.xml ,在Context节点下添加以下配置

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />

如图:

4.在MSW项目的pom.xml下添加以下配置(替换本地部署构建的配置),注:请输入本机IP地址

<!-- 设置构建 -->
    <build>
        <!-- 设置war包名称 -->
        <finalName>MSW</finalName>

        <plugins>
            <!-- Tomcat自动部署插件 -->
            <plugin>

                <!-- cargo坐标 -->
                <groupId>org.codehaus.cargo</groupId>
                <artifactId>cargo-maven2-plugin</artifactId>
                <version>1.6.8</version>

                <!-- 使用cargo所需的初始信息 -->
                <configuration>
                    <container>
                        <containerId>tomcat8x</containerId>
                        <type>remote</type>
                    </container>


                    <configuration>
                        <type>runtime</type>
                        <properties> <cargo.protocol>http</cargo.protocol> <cargo.hostname>本机IP地址</cargo.hostname> <cargo.serlet.port>8080</cargo.serlet.port> <cargo.remote.username>admin</cargo.remote.username> <cargo.remote.password>admin</cargo.remote.password> <cargo.remote.uri>http://本机IP地址:8080/manager/text</cargo.remote.uri>
                        </properties>
                    </configuration>


                    <deployables>
                        <deployable> <groupId>cn.edu.MSW</groupId> <artifactId>MSW</artifactId> <type>war</type> <properties>     <context>/${project.artifactId}</context> </properties>
                        </deployable>
                    </deployables>
                </configuration>

                <executions>
                    <execution>
                        <id>verify-deployer</id>
                        <phase>deploy</phase>
                        <goals> <goal>deployer-redeploy</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.2.2</version>
            </plugin>
        </plugins>
    </build>

注:按 win + R 输入cmd打开命令行窗口,输入 ipconfig ,IPv4 地址即是 本机IP地址。如图:

5.启动Tomcat,点击 apache-tomcat-8.5.75\bin 目录下的 startup.bat 。保持运行,打开浏览器,输入 http://本机IP地址:8080 ,如图

6.在MSW目录下输入 cmd ,进行命令行窗口,输入 mvn install ,构建成功后,再输入:mvn cargo:redeploy 。如图

7.最后,打开浏览器输入 http://本机IP地址:8080/MSW/AdminLogin.jsp ,如图

提示:远程部署,其他电脑用户需要在同一个局域网(即其本机IP地址前三段需要相同)才可以进行访问。另外,网址输入中一直有 :8080 ,可以在 apache-tomcat-8.5.75\conf 目录下的 server.xml 将端口号8080 修改为 80,pom.xml相应修改,即可消除。

到此这篇关于Maven Web项目使用Cargo实现自动化部署的文章就介绍到这了,更多相关Cargo实现自动化部署内容请搜索码农之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持码农之家!


相关文章

  • 详解pom.xml中maven profile的激活方式

    发布:2023-03-11

    本文主要介绍了详解pom.xml中maven profile的激活方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • Maven工程搭建spring boot+spring mvc+JPA的步骤详解

    发布:2019-11-15

    本篇文章主要介绍了Maven工程搭建spring boot+spring mvc+JPA的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • 如何将maven源改为国内阿里云镜像

    发布:2023-04-14

    在使用Maven打包Scala程序时,默认是从位于国外的Maven中央仓库下载相关的依赖,造成我们从国内下载依赖时速度很慢,下面这篇文章主要给大家介绍了关于如何将maven源改为国内阿里云镜像的相关资料,需要的朋友可以参考下


  • Maven依赖中scope的含义

    发布:2023-03-12

    本文主要介绍了Maven依赖中scope的含义,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • SpringBoot如何整合mybatis-generator-maven-plugin 1.4.0

    发布:2023-03-08

    这篇文章主要介绍了SpringBoot整合mybatis-generator-maven-plugin 1.4.0的实现方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧


  • Maven中optional和scope元素的使用弄明白了吗

    Maven中optional和scope元素的使用弄明白了吗

    发布:2022-10-18

    给网友们整理关于Maven的教程,这篇文章主要介绍了Maven中optional和scope元素的使用弄明白了吗,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • idea创建SpringBoot项目时Type选maven project和maven pom有何区别

    发布:2023-03-25

    Maven是一个Java工程的管理工具,跟其相同功能的工具如Gradle,下面这篇文章主要给大家介绍了关于idea创建SpringBoot项目时Type选maven project和maven pom有何区别的相关资料,需要的朋友可以参考下


  • java 基于maven多模块合并打包部署的操作过程

    发布:2023-03-26

    这篇文章主要介绍了java 基于maven多模块合并打包部署的操作过程,本文通过实例代码图文相结合给大家介绍的非常详细,需要的朋友可以参考下


网友讨论