文档章节

轻松搭建持续集成工具jenkins

java思维导图
 java思维导图
发布于 2017/04/04 21:34
字数 1462
阅读 711
收藏 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思维导图

粉丝 1744
博文 31
码字总数 34229
作品 0
广州
程序员
私信 提问
fir.im weekly - 「 持续集成 」实践教程合集

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

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

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

寰宇01
2018/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 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能。本文正是...

IBMdW
2011/11/24
21.2K
8

没有更多内容

加载失败,请刷新页面

加载更多

Flink 幕后之内存管理

Flink 幕后之内存管理 引言 目前很多大数据处理框架,例如Hadoop、Spark、Storm、Flink等。它们都基于JVM语言开发(java or scala),运行在JVM上。为了加速合并或者排序(基于磁盘的方式通常...

moyiguke
12分钟前
1
0
风起云涌,看云计算如何赋能媒体行业?

在媒体行业的转型升级中,云计算的出现多维度促进了媒体融合,打破传统媒体行业与新媒体的界限和竞争格局,在媒体素材管理、移动端功能演进的过程中扮演着重要角色,颠覆了传统媒体新闻采编、...

七牛云
15分钟前
0
0
Mybatis开发遇到问题汇总

mybatis 中![CDATA[...]] 在今天使用Mybatis的xml文件中写sql语句时写入了一些特殊字符 如 < > & 等,但解析xml文件的时候会被转义,事实上并不希望它被转义,可以使用<![CDATA[ ]]>. 这是XML...

wangwei2134
23分钟前
0
0
参数验证 @Validated 和 @Valid 的区别

来源:blog.csdn.net/qq_27680317/article/details/79970590 整编:Java技术栈(公众号ID:javastack) Spring Validation验证框架对参数的验证机制提供了@Validated(Spring's JSR-303 规范......

Java技术栈
25分钟前
0
0
JS实现继承的几种方式

前言 JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢?让我们拭目以待。 JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: ...

不负好时光
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部