文档章节

轻松搭建持续集成工具jenkins

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

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思维导图

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

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

风起云飞fir_im
2016/05/09
69
0
基于Jenkins 快速搭建持续集成环境

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

openthings
2015/12/09
338
0
基于 Jenkins 快速搭建持续集成环境

简介: 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能。本文正是...

IBMdW
2011/11/24
20.8K
8
持续化集成工具jenkins环境搭建及配置

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

陈小扁
2016/04/13
188
0
jenkins 基础配置安装(Ⅰ)

1 jenkins介绍 - 在说jenkins之前我们先来看看一个互联网公司上线的一个流程: 以共享单车为例:(充值-交押金-骑车)-开始设计产品成型-开发人员开发代码-测试人员测试功能-运维人员发布上线...

我不是瘦子
2017/11/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Minifilter的动态安装、加载及卸载

MINIFILTER框架的文件系统过滤驱动,无法使用的CreateService和OpenService进行动态加载。 看了一下,使用Inf文件安装Minifilter驱动的方式是在注册表驱动服务项下比传统驱动多创建了Instanc...

simpower
24分钟前
1
0
idea新建springCloud项目(6)- Config Server使用

1.在IDEA新建springCloud项目-Config Server 修改版本,和之前建的eureka项目版本一致,修改完记得刷新: 删除掉不需要的文件: 2.把Config S 服务注册到eureka上去,配置git地址,启动项目 ...

monroeCode
30分钟前
3
0
大数据可视化项目开发总纲

第1章 开发文档总纲 1.1 开发工具清单 名称 版本 备注 Pentaho-bi server pentaho-server-ce-7.1 Pentaho Cde为其内置工具 Pentaho-prd pentaho-prd-ce-7.1 Pentaho Report Designer报表工具...

ZhangLG
30分钟前
2
0
pip安装超时问题

pip3 install --default-timeout=100 tensorflow 设置为100秒 参考: User Guide How to solve ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443) with pip?......

亚林瓜子
32分钟前
1
0
fragment 旋转时保持当前实例

设备旋转时保存Fragment的交互状态: setRetainInstance(true);

zdglf
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部