`

使用maven自动化部署项目

 
阅读更多

通过140服务器进行测试:

 

使用tomcat:apache-tomcat-7.0.11

 

tomcat-users.xml 增加以下内容: 

 

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

 

pom文件:

 

  <properties>
		<!-- 远程部署 -->
		<c.container.id>tomcat7x</c.container.id>
		<c.container.type>remote</c.container.type>
		<c.remote.host>localhost</c.remote.host>
		<c.remote.port>8080</c.remote.port>
		<c.remote.protocol>http://</c.remote.protocol>
		<c.remote.username>admin</c.remote.username>
		<c.remote.password>admin</c.remote.password>
		<c.remote.manager.url>${c.remote.protocol}://${c.remote.host}:${c.remote.port}/manager
		</c.remote.manager.url>
  </properties>
  <profiles>
	  	<profile>
	  		<id>140</id>
	        <properties>
				<c.remote.username>admin</c.remote.username>
				<c.remote.password>admin</c.remote.password>
				<c.remote.host>192.168.0.140</c.remote.host>
				<c.remote.port>8666</c.remote.port>
			</properties>
			<build>
				<resources>
					<resource><directory>resources/140</directory></resource>
					<resource>
						<directory>${basedir}/src/main/java/</directory>
					</resource>
				</resources>
			</build>
  		</profile>
  	</profiles>
  	
  <build>
	  <plugins>
    		<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
		            <artifactId>tomcat7-maven-plugin</artifactId>
		            <version>2.0-SNAPSHOT</version>
		 			<configuration>
		                <url>http://localhost/manager/html</url>
		                <server>tomcat7</server>
		            </configuration>
		    </plugin>
    		<!-- Java编译插件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.3.2</version>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>

			<!-- War包构建插件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<webappDirectory>src/main/webapp</webappDirectory>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.cargo</groupId>
				<artifactId>cargo-maven2-plugin</artifactId>
				<version>1.2.2</version>
				<configuration>
					<container>
						<containerId>${c.container.id}</containerId>
						<type>${c.container.type}</type>
					</container>
					<configuration>
						<type>runtime</type>
						<properties>
							<cargo.hostname>${c.remote.host}</cargo.hostname>
							<cargo.servlet.port>${c.remote.port}</cargo.servlet.port>
							<cargo.remote.username>${c.remote.username}</cargo.remote.username>
							<cargo.remote.password>${c.remote.password}</cargo.remote.password>
							<cargo.remote.manager.url>${c.remote.manager.url}</cargo.remote.manager.url>
						</properties>
					</configuration>
				</configuration>
			</plugin>
	  	</plugins>
    <finalName>companyproject</finalName>
  </build>

 

然后在 run config 里面配置:

 

 

clean package cargo:redeploy   -X

140

skip Tests

browse workspace -- > companyproject

 

run 执行 后会在tomcat 的webapps 下面生成一个 companyproject.war  的war包

 

最后记得删除 maven自动生成的 classes 和 lib 目录

 

 

 

 

 

分享到:
评论

相关推荐

    hudson+maven+svn自动化部署

    工作目的:实现自动化部署工作,以期提高开发项目的工作效率; 工作内容:利用开源的可持续集成工具,实现java项目的自动编译、打包、发布等工作流程; 具体工作内容如下: 一、 自动化部署的环境搭建; 二、 Maven...

    chm版本Maven教程

    Maven自动化部署 Maven Web应用 Eclispe IDE集成Maven NetBeans IDE集成Maven Eclipse构建Maven项目 转换基于Maven的Java项目支持Eclipse IDE 转换基于Maven的Web应用程序支持Eclipse IDE 使用Maven模板创建项目 ...

    Jenkins_Maven_Git 持续集成及自动化部署 GentOS版

    Jenkins_Maven_Git 持续集成及自动化部署 GentOS版

    SpringBoot + maven + Jenkins + docker 实现docker集群一键自动化部署

    项目基本结构是SpringBoot,集成了docker-maven插件实现build完的镜像上传到私服,然后用 Jenkins构建实现docker集群一键自动化部署

    python自动化打包java maven工程,并上传至服务器

    python自动化打包java maven工程,并上传至服务器,简化服务器war上传步骤和节约时间

    一键式自动化部署方案.pptx

    首先,一键化自动部署方案对于开发人员的使用是十分友好的。一般开发人员只需要从jenkins页面或者IDEA连接jenkins,选中对应的项目,点击构建就只需要等待项目部署完成即可。 其次,对于运维人员来说需要清楚的认识...

    jenkins+springboot+git自动化部署.docx

    包括 1、maven安装 2、 nexus 私服搭建 3、安装git 4、Jenkins安装 5、spingboot项目、tomcat项目 自动化部署

    SpringBoot单体项目自动化部署脚本:git+maven

    具体细节参数打开源文件改改就好。

    Jenkins自动化部署.docx

    Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放...本文主要将一个Springboot项目通过Gitlab、Maven、Jenkins、Docker等技术,实现项目的自动化提交部署功能

    基于docker部署的jenkins+maven自动化构建部署springboot项目实践

    自动化构建部署思路 如下图 本地代码git提交到github jenkins程序(192.168.1.93) 检查到代码更新,自动构建编译spingboot项目生成war,并将war包通过ssh传到服务器(这里没多余的机器,还是用192.168.1.93)进行...

    apache-maven-3.2.5-bin

     理想的项目构建是高度自动化,跨平台,可重用的组件,标准化的,使用maven就可以帮我们完成上述所说的项目构建过程。 1.2、依赖管理  依赖指的是jar包之间的相互依赖,比如我们搭建一个Struts2的开发框架时,...

    Java项目包 Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署

    用于enkins+Maven+Gitlab+Tomcat 自动化构建打包、部署的代码拉取

    Docker+Jenkins+GitLab+Maven+SpringBoot&SpringCloud实现自动化构建镜像与部署详解

    Docker+Jenkins+GitLab+Maven+SpringBoot&SpringCloud实现自动化构建镜像与部署详解 https://www.jianshu.com/p/bdb0642b7495 本文章会涉及Docker常见命令基础知识点结合不同场景实操一起使用。 本文章会涉及结合...

    apache-maven-3.9.5-bin windows 64bit x86下载

    Maven可以简化项目的构建和依赖管理,并提供了一种规范化和可复用的方式来管理Java项目。它广泛应用于Java开发领域,简单来说:它提供了一个简单而强大的方式来管理项目的构建、依赖关系和文档在企业级项目中被广泛...

    运维-jenkins-springboot-rancher自动化部署文件.zip

    3. .pdf结尾的是自动化部署流程操作文档; 4. maven、jdk、ngrok、tomcat运行jenkins所需要的依赖库、类库等。 直接根据PDF文档复制粘贴命令即可,遇到问题文档里面有具体的解决方案,收录了大多数的问题,新手大约...

    Maven-项目管理利器

    Maven可以帮助我们更有效的管理项目,它也是一套强大的自动化构建工具,覆盖了编译、测试、运行、清理、打包和部署,是整个项目的构建中心。它提供了仓库的概念,统一地管理项目所依赖的第三方的jar包。

    持续集成环境搭建——maven、git、jenkins、tomcat

    经过近一个月的研究,完成了对maven、git、jenkins、tomcat的集成,超详细的搭建步骤,适合新人研究参考

    项目管理-maven(一)

    它提供了一种标准化的方式来构建项目、管理依赖、运行测试、生成文档等,使得项目的构建过程更加自动化和规范化。 Maven基于项目对象模型(Project Object Model,POM)来管理项目,通过在项目根目录下的pom.xml...

    Java教程自动化部署Jenkins从环境配置到项目开发

    1、持续集成及Jenkins介绍 2、Jenkins安装和持续集成环境配置 3、Jenkins构建Maven项目 4、Jenkins+Docker+SpringCloud微服务持续集成 5、基于Kubernetes/K8S构建Jenkins微服务持续集成平台

Global site tag (gtag.js) - Google Analytics