cargo-maven2-plugin的groupId是org.codehaus.cargo,不属于maven官方在groupId,因此在mavne的配置文件settings.xml中找到<pluginGroups>节点,插入<pluginGroup>org.codehaus.cargo</pluginGroup>web
<pluginGroups> <!-- pluginGroup | Specifies a further group identifier to use for plugin lookup. <pluginGroup>com.your.plugins</pluginGroup> --> <pluginGroup>org.codehaus.cargo</pluginGroup> </pluginGroups>
方便命令行调用。 #部署至本地web容器 Cargo支持两种本地部署的方式,分别为standlone模式和existing模式。在standlone模式中,Cargo会从Web容器在安装目录复制一份配置到用户指定的的目录,而后在此基础上部署上应用,每次从新构建的时候,这个目录都会被清空,全部配置都被从新生成。而在existing模式中,用户须要指定Web容器的目录,Cargo会将Web部署到tomcat目录下。 ##standalone模式 在pom.xml中的配置以下apache
<plugin> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-maven2-plugin</artifactId> <version>1.4.9</version> <configuration> <container> <containerId>tomcat7x</containerId> <home>D:\apache-tomcat-7.0.75</home> </container> <configuration> <type>standalone</type> <home>${project.build.directory}/tomcat7x</home> </configuration> </configuration> </plugin>
${project.build.directory}/tomcat7xtomcat
指的是项目会输出在项目target/tomcat7x下服务器
执行命令: mvn cargo:start
##existing模式maven
<plugin> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-maven2-plugin</artifactId> <version>1.4.9</version> <configuration> <container> <containerId>tomcat7x</containerId> <home>D:\apache-tomcat-7.0.75</home> </container> <configuration> <type>existing</type> <home>D:\apache-tomcat-7.0.75</home> </configuration> </configuration> </plugin>
#部署至远程服务器 首先须要在tomcat conf/目录下找到tomcat-users.xml,添加以下配置ide
<role rolename="manager-gui"/> <role rolename="admin-gui"/> <role rolename="manager-script"/> <user username="tomcat" password="tomcat7" roles="admin-gui, manager-gui,manager-script"/>
pom.xml配置以下:ui
<plugin> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-maven2-plugin</artifactId> <version>1.4.9</version> <configuration> <container> <containerId>tomcat7x</containerId> <type>remote</type> </container> <configuration> <type>runtime</type> <properties> <cargo.remote.username>tomcat</cargo.remote.username> <cargo.remote.password>tomcat7</cargo.remote.password> <cargo.remote.uri>http://localhost:8080/manager/text</cargo.remote.uri> </properties> </configuration> </configuration> </plugin>
远程部署采用的是tomcat的热部署技术,因此要提早启动tomcat命令行
执行命令:mvn cargo:redeploy
code