Jenkins+Maven+Git总结
来源:互联网 发布:顺德容桂电商美工助理 编辑:程序博客网 时间:2024/06/06 01:31
最近花了几天时间搭建一个Jenkins环境,实现自动更新编译代码,及集成FindBugs插件。本篇博客将从以下几点对Jenkins总结:
- Jenkins简介
- Jenkins环境准备
- Jenkins环境搭建
- Jenkins环境配置
- FindBugs插件集成
1 Jenkins简介
持续集成:一种软件开发实践,开发人员提交了新代码之后,集成工具能够自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
Jenkins:一个开源软件项目,基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
2 Jenkins环境准备
2.1 Jdk安装:
http://www.oracle.com/technetwork/java/javase/downloads/index.html,建议不要下载最新的JDK
2.2 Git安装:
- linux Fedora系列安装命令:sudo yum install git
- linux Debian系列安装命令:sudo apt-get install git
- 验证安装:git version
git version 2.15.0
- 安装完成后,可参考http://blog.csdn.net/guweiyu_thinker/article/details/78186172,配置客户端及SSH公钥。
注意:如果在执行git clone过程中出现错误“The requested URL returned error: 401 Unauthorized while accessing”,这是由于版本问题,重新下载最新的版本,具体如下:
解压:tar -xzvf git-**.tar.gz
进入git目录:# cd git-**
编译安装:
autoconf ./configure --prefix=/usr/local make && make install
重置环境变量(本文是通过设置软连接实现的)
rm /usr/bin/gitln -s /usr/local/bin/git /usr/bin/git
2.3 maven安装:
- 从官网上下载maven:http://maven.apache.org/download.cgi
解压至/usr/local目录下:tar -xzvf apache-maven-3.2.5-bin.tar.gz
设置环境变量:修改~/.bash_profile,添加如下:
export MAVEN_HOME="/usr/local/apache-maven-3.2.5"export PATH="${PATH}:${MAVEN_HOME}/bin"
- 验证安装:mvn -v,如果出现如下类似信息,安装成功
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1;2014-12-15T01:29:23+08:00)Maven home: /usr/local/apache-maven-3.2.5Java version: 1.7.0_45, vendor: Oracle CorporationJava home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.45.x86_64/jreDefault locale: zh_CN, platform encoding: UTF-8OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
- 按照需求修改settings.xml文件,正常位于:/usr/local/apache-maven-3.2.5/conf,或者通过:find . -name settings.xml查找。
3 Jenkins环境搭建
- 从jenkins官网上https://jenkins.io/download/对应系统的Jenkins,笔者的系统是:
Linux version 2.6.32-431.el6.x86_64 (mockbuild@x86-023.build.eng.bos.redhat.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Sun Nov 10 22:19:54 EST 2013
下载版本jenkins-2.46.1-1.1.noarch.rpm
安装Jenkins:sudo rpm -ih jenkins-2.9-1.1.noarch.rpm
自动安装完成后,文件所在的目录如下:
war包:/usr/lib/jenkins/jenkins.war
配置文件:/etc/sysconfig/jenkins
默认的JENKINS_HOME目录:/var/lib/jenkins/
Jenkins日志文件/var/log/jenkins/jenkins.log
- 启动或者停止Jenkins
启动Jenkins:sudo service jenkins start
Starting Jenkins [确定]
停止Jenkins:sudo service jenkins stop
Shutting down Jenkins [确定]
- 访问地址:http://192.168.1.227:8080/,如果是搭建在本地环境可以直接访问:http://localhost:8080
cat /var/lib/jenkins/secrets/initialAdminPassword,将初始化密码粘到文本框中。/Users/guweiyu/Desktop/Jenkins系统设置.png
4 Jenkins环境配置
Jenkins的环境配置全部在’系统配置’中:
在界面里可以进行系统的全局设置,插件管理(比如安装maven插件,Git插件,Mail插件,SSH插件等等),Global Tool Configuration等等。
4.1 管理插件
选择‘管理插件’,安装FindBugs插件:’FindBugs Plug-in’,邮件通知插件:‘Email Extension Plugin’等。
4.2 Git+Maven本地环境装载
选择‘Global Tool Configuration’,将本地JDK路径,GIT路径,maven路径加入到配置中,当然也可以通过Jenkins自动下载
4.3 邮件通知及远程SSH连接
选择‘系统设置’
- 添加SSH远程连接,在SSH remote hosts处,添加:
- 添加邮件通知,在‘Jenkins Location’处添加系统管理员地址
- 在‘Extended E-mail Notification’处配置邮件SMTP信息
- 在‘邮件通知’处同上配置
至此,配置完成,下面就可以新建一个工程了。
4.4 Maven工程构建
- 在主界面,选择‘新建工程’,然后选择‘构建一个maven项目
- 在‘源码管理’,设置:
- ‘构建触发器’,设置定时任务,当git发生更新时,重新构建工程:
- ‘构建’,设置mvn打包方式,本编译跳过测试案例编译
注意:中间可能设置许多认证方面的信息,可以在主界面‘Credentials’处添加,比如git账户,ssh远程访问认证等
5 FindBugs插件集成
首先在maven编译命令后面添加‘ findbugs:findbugs’,注意findbugs扫描的是classess文件,因此一定要mvn compile,再findbugs。
然后,在构建操作和构建后操作,勾选Foundbugs相关按钮
至此,已全部搭建完成,点击立即构建,工程就可以自动的迁移git代码,利用maven编译打包,使用findbugs扫描代码。
在整个搭建的过程,肯定不会像上面所看到的这么顺利,出现过许多各种问题,这些问题没有列出来。因为我相信,只要你有一颗不达目的,誓不罢休的决心,一切困难都是纸老虎。
- Jenkins+Maven+Git总结
- Jenkins+Tomcat+maven+git+
- Jenkins + Maven + Git 安装
- 整合Jenkins+git+maven
- Jenkins+git+Maven项目
- Jenkins+Git(svn)+Ant(Maven)
- git maven Jenkins 可持续集成
- Jenkins+Git+Maven+Shell+Tomcat
- Jenkins+maven+git环境部署
- 系统集成Jenkins+git+maven方式
- Jenkins-配置git maven testng
- Jenkins学习总结(3)——Jenkins+Maven+Git搭建持续集成和自动化部署的
- Jenkins+Git+maven搭建持续集成环境
- jenkins Git maven Nexcus 构建环境搭建
- jenkins+maven+git自动构建环境搭建
- selenium---git、testng、maven、jenkins构建job
- Jenkins+maven+git的可持续集成实践
- jenkins+git+ maven 配置注意事项(坑)
- PHPCMS V9 实现下拉加载的方法,兼容手机端(附源码下载)
- 解决CentOS7关闭/开启防火墙出现Unit iptables.service failed to load: No such file or directory.
- 6.3 程序改错题
- 原生JS取代一些JQuery方法
- 一个平行四边形
- Jenkins+Maven+Git总结
- http服务
- 深入解析Linux 常用命令--cp
- Oracle:xml和oracle数据库
- if语句的使用
- 【tflearn系列教程】(一)为什么要学tflearn?
- 串的模式匹配算法-KMP
- react学习笔记一
- dubbo和redis修改密码