Jenkins和maven自动化构建java程序
转自:http://www.cnblogs.com/gao241/archive/2013/04/08/3008380.html,版权归原作者所有。
Jenkins是一个非常出色的持续集成服务器,本文主要介绍在CentOS系统中Jenkins的基本安装配置方法,供参考。
一. 软件包:
1. 下载apache-maven-2.2.1-bin.tar
http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-2.2.1-bin.tar.gz
2. 下载jenkins:http://mirrors.jenkins-ci.org/war/ 列出了jenkins的所有release版本,请选择下载
二. 安装
本文假设操作用户为gistech。
1. 安装jdk,参考《CentOS系统中安装JDK1.6》。
2. 安装tomcat7,参考《CenOS系统中安装Tomcat7》。
修改tomcat配置文件
$ vi /home/gistech/tomcat/conf/server.xml
修改8080端口的Connector节点,增加如下配置
URIEncoding="UTF-8"
3. 安装maven
1) 解压
$ tar -zvxf apache-maven-2.2.1-bin.tar.gz
2) 移动到其他目录
$ mv apache-maven-2.2.1 /home/gistech/maven
3) 配置环境变量
编辑.bash_profile文件
$ cd /home/gistech
$ vi .bash_profile
添加如下内容
MAVEN_HOME=$HOME/maven
PATH=$PATH:$HOME/bin:$MAVEN_HOME/bin export MAVEN_HOME
export PATH
使环境变量生效
$ source .bash_profile
4) 验证是否安装成功
$ mvn -v
5) 配置maven
编辑maven的配置文件
$ cd maven/conf
$ vi settings.xml
修改配置文件示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>/home/gistech/~m2</localRepository>
<servers>
<server>
<username>admin</username>
<password>password</password>
</server>
</servers>
<mirrors>
<mirror>
<!-- This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>central</mirrorOf>
<url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<!-- Enable snapshots for the built in central repo to direct -->
<!-- all requests to nexus via the mirror -->
<repositories>
<repository>
<id>central</id>
<url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<!-- make the profile active all the time -->
<activeProfile>nexus</activeProfile>
</activeProfiles> <pluginGroups>
<!-- define the sonatype plugin group, so the nexus plugins will work without
typing the groupId -->
<pluginGroup>org.sonatype.plugins</pluginGroup>
</pluginGroups>
</settings>

其中localRepository节点表示私服中下载的jar包存放路径,根据实际存放的路径修改。
所有url节点中包含的地址:http://192.168.120.247:8081/nexus/content/repositories/public,表示nexus私服的地址,请根据实际的地址修改。
username、password节点表示登录nexus私服的用户名及密码。
4、安装jenkins
1) 复制到tomcat webapps目录
$ mv jenkins.war /home/gistech/tomcat/webapps
2) 配置环境变量
编辑.bash_profile文件
添加如下内容
JENKINS_HOME=$HOME/tomcat/webapps/jenkins export JENKINS_HOME
使环境变量生效
source .bash_profile
3) 启动tomcat,使用http://localhost:8080/jenkins访问jenkins
三、jenkins的基本配置
1、全局配置
单击首页左边的“系统管理”,进入“系统设置”,在这里对jenkins进行全局设置
1) JDK安装。如果没有读取出系统变量,就手动设置好别名和JAVA_HOME就可以了
2) Maven同理
3) 配置管理员邮件通知
配置方式如下图:
配置完成后可以点击"通过发送测试邮件测试配置"按钮进行测试。
2、创建job
1) 在页面中点击“新job”,输入任务名称,选择“构建一个maven2/3项目”,如下图:
2) 点击ok按钮进入任务配置页面,首先配置项目的svn地址,如下图:
3) 配置maven的pom文件位置,可以使用相对路径(相对于svn地址库中的位置),如下图:
4) 配置maven编译参数,如下图所示不执行单元测试:
关于maven的编译参数可参考Maven基本命令
3、邮件通知
构建邮件通知配置如下图,Recipients栏目中添加需要发送邮件通知的邮件地址。
4、定时构建
构建触发器可以配置构建的时间,如果需要定时构建,可以选择 Build periodically,日程表参数解释如下:
- 第一个参数代表的是分钟 minute,取值 0~59;
- 第二个参数代表的是小时 hour,取值 0~23;
- 第三个参数代表的是天 day,取值 1~31;
- 第四个参数代表的是月 month,取值 1~12;
- 最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。
如0 * * * * 表示的就是每个小时的第 0 分钟执行一次构建。
5、版本更新构建
很多情况需要jenkins定时轮询版本库,只要有版本更新就触发构建,jenkins提供了Poll SCM支持版本更新构建,如上图,配置参数与定时构建的参数一样,如*/5 * * * *表示每隔5分钟轮询一次,检查版本库是否更新。
Jenkins和maven自动化构建java程序的更多相关文章
- 【转】Windons+jenkins,构建java程序,提示C:\Windows\TEMP\jenkins5037773887088486383.bat Access is denied
坑1: !!!前提:已设置本机电脑的账号密码, 解决方法:搜索程序services.msc-- 找到Jenkins-- 右键“属性”--登录--此账户--输入本机的账号密码--保存-- 停止Jenki ...
- 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)
工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...
- 用Eclipse+Maven+Jetty构建Java Web开发环境(详细笔记)
(软件环境) 『系统』Windows 10 x64 『JAVA』JDK 1.8.0_91 『Eclipse』 Eclipse-oxygen 『Maven』 apache-maven-3.6.3 『Je ...
- maven自动化构建工具
目录结构: 一.Maven简介 二.Maven核心概念 三.Maven的使用 四.Maven在IDEA中的应用 五.依赖管理 六.Maven常用设置 ------------------------- ...
- Java-Maven-Runoob:Maven 自动化构建
ylbtech-Java-Maven-Runoob:Maven 自动化构建 1.返回顶部 1. 自动化构建定义了这样一种场景: 在一个项目成功构建完成后,其相关的依赖工程即开始构建,这样可以保证其依赖 ...
- 【第十四篇】- Maven 自动化构建之Spring Cloud直播商城 b2b2c电子商务技术总结
Maven 自动化构建 自动化构建定义了这样一种场景: 在一个项目成功构建完成后,其相关的依赖工程即开始构建,这样可以保证其依赖项目的稳定. 比如一个团队正在开发一个项目 bus-core-api, ...
- [ jenkins ] git+jenkins+maven + ansible 部署java程序
1. 工具介绍 git:版本控制,一般都是托管到代码仓库的.如 github.coding.gitlab (本文以 coding 为例) jenkins:持续集成工具之一,也是最常用的工具,主要工作就 ...
- Jenkins+Tomcat+svn+maven自动化构建简单过程
搭建好jenkins自动化构建之后,点击立即构建,即可将svn服务器上的源码自动编译构建,并打成war包,然后将这个war包以及编译好的项目复制到指定服务器的tomcat容器里,当svn服务器的代码有 ...
- Jenkins敏捷开发 自动化构建工具
一.序言 Jenkins 是一款自动化构建工具,能够基于 Maven 构建后端 Java 项目,也能够基于 nodejs 构建前端 vue 项目,并且有可视化 web 界面. 所谓自动化构建是按照一定 ...
随机推荐
- QQ空间说说如何批量删除
事件背景: 今天突发奇想,想把自己之前发的说说都删除了,结果就有了下面的代码 1.按F12 2.点击 Console,进入Console项 3.使用以下代码: var delay = 1000; fu ...
- Go语言规格说明书 之 接口类型(Interface types)
go version go1.11 windows/amd64 本文为阅读Go语言中文官网的规则说明书(https://golang.google.cn/ref/spec)而做的笔记,介绍Go语言的 ...
- OCM_第三天课程:Section1 —》表空间的操作和管理、服务配置
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- pytest九:使用自定义标记 mark
pytest 可以支持自定义标记,自定义标记可以把一个 web 项目划分多个模块,然后指定模块名称执行.app 自动化的时候,如果想android 和 ios 公用一套代码时,也可以使用标记功能,标明 ...
- 2018-2019 2 20165203 《网络对抗技术》 Exp1 PC平台逆向破解
2018-2019 2 20165203 <网络对抗技术> Exp1 PC平台逆向破解 实验要求 1.掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码 2.掌握反汇编与十六 ...
- 开始写博客,学习Linq(4)
应该是可以敲代码了,Linq是.NET Framework3.5的功能,该版本的框架同时发布了新增的和更新了得类库,也为C#和VB.NET语言提供了新版本的编译器.Linq的功能支持源于编译器和类库, ...
- User Agent 设置
感谢版主回复,版主贴的方法网上到处都是,我试了很多次都是不行的,有用的方法都几乎这个到处转贴的信息淹没了. 今天我总算在一个博客找了到可行的方法,转过来和大家分享 Windows Registry E ...
- Pig和Hive的对比
Pig Pig是一种编程语言,它简化了Hadoop常见的工作任务.Pig可加载数据.表达转换数据以及存储最终结果.Pig内置的操作使得半结构化数据变得有意义(如日志文件).同时Pig可扩展使用Java ...
- 019 mapreduce的核心--shuffle理解,以及在shuffle中的优化
关于shuffle的过程图. 一:概述shuffle Shuffle是mapreduce的核心,链接map与reduce的中间过程. Mapp负责过滤分发,而reduce则是归并整理,从mapp输出到 ...
- Ubuntu 16.04 LTS 安装Mongodb 3.4
第一步:安装 #setp 1. Import the public key used by the package management system. sudo apt-key adv --keys ...