jenkins搭建简单项目

162 阅读4分钟

jenkins环境配置和插件安装

进入jenikins主页,点击左侧系统管理,进入全局工具配置

全局工具配置

点击全局工具,进入JDK和Maven配置的页面

JDK/MAVEN配置

点击新增JDK,取消自动安装,给新增的JDK取个名称,在JAVA_HOME输入框填入服务器上的JDK目录。

同理,新增Maven配置。

接下来进行插件安装,点击插件管理,进入可选插件界面。

Jenkins插件

可选插件

在该界面中,请不要使用右上角的过滤功能,由于插件过多,使用jenkins自带的过滤功能会导致浏览器卡死。所以请使用浏览器内容搜索的功能:"ctrl + F"在浏览器的搜索框中输入“Maven Integration”搜索maven插件,不同的插件版本命名可能略有差异,找到maven插件后在左边文本框中打钩,点击下方直接安装即可。

勾选插件

安装中

安装过程中,有一个安装后重启jenkins的设置,建议取消打钩,等待安装完成即可.

取消勾选

基于maven编译简单的java项目

主界面中新建任务,能够看到构建一个maven项目,该选项是需要安装 Maven Integration 才会出现的,选中它并输入项目名称,点击下方的确认按钮

新建任务

新建任务细节

也可以通过输入一个已存在的任务名称,将任务的所有配置拷贝复制到新建任务当中.

新建任务细节

General:建议一定要勾选丢弃旧的构建,并配置构建保留天数及数量,可以配置10天、10个,感觉足以,不丢弃旧的构建容易把磁盘空间占满.

General配置

源码管理:选中SVN(Git操作也差不多),并输入项目的svn路径,然后添加svn访问用户,输入账号密码即可,jenkins会自动帮你检测该账号能否访问svn路径并提示。

源码管理

构建触发器配置:

触发器配置

  • 第一个参数代表的是分钟 minute,取值 0~59;

  • 第二个参数代表的是小时 hour,取值 0~23;

  • 第三个参数代表的是天 day,取值 1~31;

  • 第四个参数代表的是月 month,取值 1~12;

  • 最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。

常用例子:

  • 每小时构建一次: * H/1 * * *
  • 每隔5分钟构建一次: H/5 * * * *
  • 每天8点30分构建一次: 30 8 * * *
  • 每个小时的第10分钟构建一次: 10 * * * *
  • 每周六日的1点10分构建一次: 10 1 * * 6,0

Pre Steps:构建前需要执行的一些操作,可以选择shell脚本、window命令等,这个根据需求去研究如何配置,暂时不细讲

Build:

构建命令配置

建议使用clean install 替换 clean package 命令,clean package是把项目打包到target下,它并不会打包到maven的仓库,而clean install会打包进maven的仓库,可以避免一些不必要的问题。

Post Steps:构建后需要执行的一些操作,同Pre Steps,其中构建不稳定指的是最近的5次构建中,曾经出现过构建失败。

构建后命令配置

配置到这后一个简单的构建任务就已经完成了,点击保存,主界面会出现新建的构建任务,点击右边的构建即可。

任务列表

进入项目详情,左下角能够看到一些构建历史,点击构建历史能够查看每一次的构建详情,也能看到触发的构建原因,SVN更新的版本、信息等。

构建历史

详情

其他问题

  1. 插件安装问题 当我们遇到服务器无法连接外网,或者下载插件失败,可以通过先在其他地方下载,然后通过jenkins管理界面上传实现插件安装。

插件url

上传

  1. jenkins日志输出过多问题

发现如果默认情况下,jenkins日志在短时间可以把磁盘打满,需要进行配置。

在系统管理->系统日志中设置。

日志级别设置

  1. 资源管理中找不到SVN管理

缺少 Subversion插件,去插件中心搜索安装好就可以。

  1. 典型构建后的启动配置

#!/bin/bash

# 先将程序停止
PID=$(ps -ef | grep hard-work-0.0.1.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
    echo Application is already stopped
else
    echo kill $PID
    kill $PID
fi

# 重新部署文件
cd /usr/local/jenkins/projects
rm -rf hard-work-0.0.1.jar
cd /usr/local/jenkins/logs
rm -rf hard-work.log
cp /usr/local/maven/repository/ccu/liqiuyu/hard-work/0.0.1-SNAPSHOT/hard-work-0.0.1-SNAPSHOT.jar /usr/local/jenkins/projects
mv /usr/local/jenkins/projects/hard-work-0.0.1-SNAPSHOT.jar /usr/local/jenkins/projects/hard-work-0.0.1.jar
cd /usr/local/jenkins/projects

# 启动之前要加BUILD_ID=DONTKILLME
BUILD_ID=DONTKILLME
java -jar hard-work-0.0.1.jar > /usr/local/jenkins/logs/hard-work.log  2>&1 &