文档章节

轻松搭建持续集成工具jenkins

java思维导图
 java思维导图
发布于 2017/04/04 21:34
字数 1462
阅读 694
收藏 13

1.Jenkins介绍

1)什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题。尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火,如何能再不断变化的需求中快速适应和保证软件的质量也显得尤其的重要。  持续集成正是针对这一类问题的一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能发生多次集成。而每次的集成都是通过自动化的构建来验证,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队能够更快的开发内聚的软件。   核心价值体现在: a、持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量;  b、持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。换言之,任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能;  c、持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团队对开发产品的信心。

业界普遍认同的持续集成的原则包括:
1)需要版本控制软件保障团队成员提交的代码不会导致集成失败。常用的版本控制软件有 IBM Rational ClearCase、CVS、Subversion 等; 2)开发人员必须及时向版本控制库中提交代码,也必须经常性地从版本控制库中更新代码到本地; 3)需要有专门的集成服务器来执行集成构建。根据项目的具体实际,集成构建可以被软件的修改来直接触发,也可以定时启动,如每半个小时构建一次; 4)必须保证构建的成功。如果构建失败,修复构建过程中的错误是优先级最高的工作。一旦修复,需要手动启动一次构建。

2)持续集成系统的组成 由此可见,一个完整的构建系统必须包括:  A、一个自动构建过程,包括自动编译、分发、部署和测试等。  B、 一个代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。   C、一个持续集成服务器。本文中介绍的 Jenkins/Jenkins 就是一个配置简单和使用方便的持续集成服务器。

3)Jenkins介绍

Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1、持续的软件版本发布/测试项目。 2、监控外部调用执行的工作

使用Jenkins人员需要对持续集成的概念有所了解,更多的要求对代码的编译过程很了解,Jenkins对于maven工程完整的编译和发布流程如下:  1、Jenkins从SVN上拉取代码到指定的编译机器上。   2、在编译机器上触发编译命令或脚本。   3、编译得到的结果文件。  4、把结果文件传到指定的服务器上。

2.Jenkins安装与配置 1)本次测试环境介绍 部署系统 Ubuntu14.04 Tomcat Tomcat8 JDK Jdk1.8 Maven Maven3.3.9 Jenkins Jenkins.war(1.565) 管理工具 Svn

2)安装jdk、tomcat、maven环境 1、安装jdk与tomcat 参照地址:http://jingyan.baidu.com/article/ff42efa9162ea5c19e22021c.html

a、解压下载的jdk的jar.gz文件到/usr/local/java下。 b、为java配置本地环境变量,并测试java环境是否配置成功。 ~vim /etc/profile JAVA_HOME=/usr/local/java CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib PATH=$JAVA_HOME/bin:$PATH export PATH CLASSPATH JAVA_HOME ~source /etc/profile ~java -version

图片1.png

注意::每次重启系统进入root权限都要source /etc/profile才能看到java的version

c、解压tomcat软件包apache-tomcat-8.tar.gz,并将解压文件移动到/usr/local下 启动tomcat服务器 #cd /usr/local/tomcat/bin/ #./startup.sh #访问http://localhost:8080

2、安装maven 参考地址:http://www.linuxidc.com/Linux/2012-03/56476.htm A、解压maven到/usr/local/maven 然后修改环境变量: #vi /etc/profile

添加下面内容: #maven M2_HOME=/usr/maven PATH=$PATH:$M2_HOME/bin export M2_HOME PATH

保存退出vi编辑器 然后使环境变量生效: #source /etc/profile 或注销重新登录 若成功,输入#mvn -v后显示:

图片2.png

3)部署jenkins到tomcat Jenkins的部署过程很简单,只需要把下载的war包复制到tomcat的webapps目录下即可。

图片3.png

4)访问jenkins 启动tomcat,访问http://localhost:8080/jenkins

图片4.png

3.部署项目

1、系统设置,配置jdk与maven的环境

图片5.png

2、插件管理

图片6.png

图片7.png

3、源码管理

图片8_meitu_1.jpg

4、构建触发器

图片9.png

5、构建后操作,这需要tomcat-user.xml中设置tomcat账号密码才能正确部署项目并运行。

图片10.png

6、建立maven项目,并设置好参数后立即构建。如果正常构建则显示蓝色,错误为红色。可查看从构建日志中查看控制台输出的信息。

图片11.png

图片12.png

© 著作权归作者所有

共有 人打赏支持
java思维导图

java思维导图

粉丝 1727
博文 29
码字总数 28964
作品 0
广州
程序员
fir.im weekly - 「 持续集成 」实践教程合集

我们常看到许多团队和开发者分享他们的持续集成实践经验,本期 fir.im Weekly 收集了 iOS,Android,PHP ,NodeJS 等项目搭建持续集成的实践,以及一些国内外公司的内部持续集成系统的经验,...

风起云飞fir_im
2016/05/09
69
0
使用 Jenkins 构建 Coding 项目 (资源)

Jenkins简介 Jenkins是一种跨平台的持续集成和交付的应用软件,它便于不断稳定地交付新的软件版本,并提高你的工作效率。这款开发运维工具还让开发人员更容易把项目的变化整合起来,并使用大...

寰宇01
04/23
0
0
持续化集成工具jenkins环境搭建及配置

1.Jenkins是什么,用来解决什么问题 对于很多做嵌入式的同学可能没有听过持续集成这个词, 也就没有接触过Jenkins这个工具软件,那么什么是持续集成, Jenkins具体用来做什么呢? 持续集成, Conti...

陈小扁
2016/04/13
188
0
基于Jenkins 快速搭建持续集成环境

持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题。尤其是近些年来,敏捷(Agile)...

openthings
2015/12/09
338
0
jenkins集群测试环境原理

Jenkins自动化构建成过程,可帮助我们节省大量时间,完成这个过程的自动化后,在以后的开发过程中,我们需要做的,就是只是提交代码到版本库中,构建自动完成,基本不再需要人工干预。 代码仓...

啊凯linux
06/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

线性一致性和 Raft

作者:沈泰宁 在讨论分布式系统时,共识算法(Consensus algorithm)和一致性(Consistency)通常是讨论热点,两者的联系很微妙,很容易搞混。一些常见的误解:使用了 Raft [0] 或者 paxos ...

TiDB
12分钟前
0
0
兄弟连区块链教程以太坊源码分析core-state-process源码分析

## StateTransition状态转换模型 /* The State Transitioning Model 状态转换模型 A state transition is a change made when a transaction is applied to the cu......

兄弟连区块链入门教程
14分钟前
0
0
linear-gradient渐变中的参数

在看张鑫旭的博客 遇到渐变数值后面带参数不太理解 @supports (-webkit-mask: none) or (mask: none) { .box { border: none; background: linear-gradient(to bottom, #34538...

红羊在厦门
15分钟前
0
0
Python yagmail模块自动发邮件

Python发邮件yagmail模块 import yagmail#连接服务器yag=yagmail.SMTP('xx@163.com','yy','smtp.163.com')#邮箱正文contents=["test","email send"]#发送邮件#yag.send('...

小白兔_球球
16分钟前
1
0
pada mysql

CREATE SCHEMA `exchange` DEFAULT CHARACTER SET utf8mb4 ;

qwfys
25分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部