阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Jenkins 持续集成环境快捷部署

255次阅读
没有评论

共计 4695 个字符,预计需要花费 12 分钟才能阅读完成。

搭建持续集成环境 Jenkins + Maven + SVN + Tomcat 实现自动编译打包部署。

1. 环境准备
(1)JDK1.8.0_131                    #不低于 1.7 版本,这里用最新版本
(2)Apache Maven 3.3.9        #可以选择 3.2.5 或者 3.3.9;不要使用 3.5.0 版本!!
(3)SVN 客户端(Subversion 1.6.11)#程序版本控制 SVN1.6.11
(4)Tomcat1.7(apache-tomcat-7.0.77)      #Tomcat7.0.77 或者 7.0.75
(5)CentOS6.7

2. 安装配置

Java 环境安装配置
下载最新版本 1.8.0_131
cd /tmp/

wget http://download.Oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

tar zxf jdk-8u131-linux-x64.tar.gz -C /usr/local/
vim /etc/profile
添加如下内容
export JAVA_HOME=/usr/local/jdk1.8.0_131

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

然后执行
source /etc/profile

Maven 安装

到 Apache 官网下载 maven3.3.9 版本
wget
http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
tar zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
vim /etc/profile

添加下面内容
export MAVEN_HOME=/usr/local/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin

source /etc/profile
查看版本

[root@localhost tmp]# mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/apache-maven-3.3.9
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/local/jdk1.8.0_131/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: “linux”, version: “2.6.32-573.el6.x86_64”, arch: “amd64”, family: “unix”

Tomcat 安装

下载 Tomcat7.0_77

wget http://apache.fayea.com/tomcat/tomcat-7/v7.0.77/bin/apache-tomcat-7.0.77.zip
 unzip apache-tomcat-7.0.77.zip
 mv apache-tomcat-7.0.77 /usr/local/
 cd /usr/local/apache-tomcat-7.0.77

安装 Jenkins
wget http://mirrors.jenkins.io/war-stable/1.609.3/jenkins.war
mv jenkins.war /usr/local/apache-tomcat-7.0.77/webapps/
cd /usr/local/apache-tomcat-7.0.77/webapps/
在 webapps 目录下启动 jenkins
执行命令  java -jar jenkins.war
(关闭 selinux 和 iptables)
浏览器访问 jenkins  http://192.168.1.7:8080/ 

安装配置 svn
可以参考 http://superleedo.blog.51cto.com/12164670/1888804
yum -y install subversion
mkdir /var/svn
svnadmin create /var/svn/project
svn import /etc/java  file:///var/svn/project -m “java”
 启动 svn

svnserve -d -r /var/svn/project
用 windows 客户端检出 svn://192.168.1.7/project  测试是否成功
需要设置密码的请查看上面链接文档自行设置

使用 Maven 创建项目
通过 maven 创建 helloworld 项目
cd /tmp/
使用 mvn 命令创建
mvn archetype:generate  -DgroupId=helloworld -DartifactId=helloworld
[INFO] Scanning for projects…
[INFO]                                                                       
[INFO] ————————————————————————
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ————————————————————————
….. 信息多,略去 ……
[INFO] Generating project in Interactive mode ## 此处可能会卡住,可以选择一直等待 1 个小时左右就正常进行了,只要这次链接下载成功了,以后就不会出现这种情况了;也可以用重新创建时加入忽略跳过参数 -DarchetypeCatalog=internal ##
…………………….

…………………….
Define value for property ‘version’:  1.0-SNAPSHOT: :    ## 执行到此处停止了,回车即可
[INFO] Using property: package = helloworld
Confirm properties configuration:
groupId: helloworld
artifactId: helloworld
version: 1.0-SNAPSHOT
package: helloworld
 Y: :    ## 输入 Y,回车
。。。。。下面等待直到成功

tree helloworld/
helloworld/
├── pom.xml
└── src
    ├── main
    │  └── java
    │      └── helloworld
    │          └── App.java
    └── test
        └── java
            └── helloworld
                └── AppTest.java
下面将创建的项目导入到 svn 版本库中 /var/svn/project 中
svn import /tmp/helloworld file:///var/svn/project/ -m “helloword”

3 配置 Jenkins

浏览器访问 jenkins  http://192.168.1.7:8080/ 进入 Jenkins 管理界

Jenkins 持续集成环境快捷部署

Jenkins Web 的全局环境配置:

系统管理 => 系统设置配置 jdk 和 mvn 的家目录,顺便查看自己的 Jenkins 家目录是否改变为自己定义的

Jenkins 持续集成环境快捷部署

jenkins 的家目录如下图

Jenkins 持续集成环境快捷部署

jdk/mvn 的配置如下图:

Jenkins 持续集成环境快捷部署

mvn 的仓库为了方便使用默认的:

Jenkins 填写 URL,SVN 选择自己安装的版本

Jenkins 持续集成环境快捷部署

接下来创建 helloworld 项目任务

新建任务

Jenkins 持续集成环境快捷部署

Jenkins 持续集成环境快捷部署

Jenkins 持续集成环境快捷部署

pom.xml 文件,选择跳过测试(不跳过测试,耗时还可能报错):

添加内容如下(clean install -Dmaven.test.skip=true)

Jenkins 持续集成环境快捷部署

设置好任务后,新建工作空间,也就是执行编译打包,此过程时间会比较长,需要耐心等待

Jenkins 持续集成环境快捷部署

构建完成后出现 jar 包,在后台工作空间中会多一个 target 目录

Jenkins 持续集成环境快捷部署

4 构建过程中常见错误及解决方法

(1)svn 的 URL 配置问题,路径出现不正确或者提示要输入账号密码.

SVN 的路径是项目的上一级目录,如果配置的 svn 有账号密码,就根据提示填入账号密码即可

(2)找不到 pom.xml.

pom.xml 文件是必须的,maven 创建的项目都会有这个文件,其他项目支持 maven 且有这个文件才行

所有测试的时候我选择用 maven 命令创建一个测试项目,保证不出现 pom.xml 找不到的问题

(3)maven 创建项目时在 generating project in interactive mode 卡住了.

解决方法是可以选择一直等待就行了大概一个小时左右,只是首次会出现这个情况(推荐等待完成)

也可以在命令后加参数 -DarchetypeCatalog=internal

mvn archetype:generate  -DgroupId=helloworld -DartifactId=helloworld -DarchetypeCatalog=internal

(4)在执行创建工作空间时候,创建不成功,出现错误.

………

java.lang.NoSuchFieldError: DEFAULT_USER_SETTINGS_FILE

………

这是 jar 冲突,版本太高引起的,maven3.5.0 版本有这个问题,使用 3.3.9 低版本就可以了

总结:以上这些完成后,算是基础环境搭建已经成功完成,剩下的就是根据自己的项目实际情况深入学习配置使用 Jenkins 持续集成了。

局域网内利用 GitLab+Jenkins 自动生成 GitBook 并发布(Nginx)  http://www.linuxidc.com/Linux/2016-05/131136.htm

Linux+Git+Maven+Jenkins+Neuxs 自动化编译环境搭建 http://www.linuxidc.com/Linux/2016-02/128652.htm

CentOS6 安装 Jenkins  http://www.linuxidc.com/Linux/2016-05/131365.htm

使用 Jenkins 配置 Git+Maven 的自动化构建 http://www.linuxidc.com/Linux/2016-02/128641.htm

Jenkins+Maven+Git 搭建持续集成和自动化部署的配置手记 http://www.linuxidc.com/Linux/2015-06/118606.htm

Jenkins 的分布式构建及部署——节点  http://www.linuxidc.com/Linux/2015-05/116903.htm

Jenkins 的详细介绍:请点这里
Jenkins 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/143624.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4695字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中