简介

  • Jenkins是一个可扩展的持续集成引擎。
  • 持续集成,就是通常所说的CI(Continues Integration),可以说是现代软件技术开发的基础。
  • 集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。
  • 持续、自动地构建、测试软件项目。
  • 监控一些定时执行的任务。

安装

需要在要部署Jenkins的服务器,先安装JDK、GIT、Maven

官网下载jenkins.war包(注意jenkins版本要与JDK版本相匹配)
上传war包后,执行。可以通过httpPort指定启动的端口号(默认8080)

# nohup后台启动nohup java -jar jenkins.war --httpPort=9000 &

网页访问:9000

# 初始密码,根据页面提示访问cat /root/.jenkins/secrets/initialAdminPassword

配置

修改插件升级站点

Manage Jenkins->Manage Plugins->高级

原站点:https://updates.jenkins.io/update-center.json 改为:http://mirror.xmission.com/jenkins/updates/update-center.json可以更快的下载插件

安装插件

  • Publish over SSH
  • Maven Integration

配置SSH服务器

Manage Jenkins->Configure System

可以设置多台服务器

配置全局工具

Manage Jenkins->Global Tool Configuration

根据服务器的JDK、GIt、Maven安装路径进行设置



使用

新建一个Maven项目并进行相关配置

配置源码管理

配置构建Build

clean package -Dmaven.test.skip=true -U

  • clean: 清理项目构建目录,删除之前构建生成的文件。
  • package: 打包项目,将项目编译成可执行的二进制文件(例如JAR、WAR等)。
  • -Dmaven.test.skip=true: 跳过执行项目的测试阶段。通常情况下,Maven会在构建过程中执行项目的测试用例,但使用该参数可以跳过测试阶段。
  • -U: 强制更新依赖项。使用该参数会强制Maven检查远程仓库以获取最新的依赖项。

配置Post Steps

部署war包到linux服务器

注意根据自己实际项目路径做调整

#!/bin/bashsource /etc/profile#Maven打包后的程序名称(名称要求完整)app=tomcat-8.5.23_eps#若项目已启动,杀死旧进程PID=`ps -ef | grep -w "$app" | grep -v grep | awk '{print $2}'`if [ "$PID" != "" ]; thenecho kill $PIDkill -9 $PIDfi#进入tomcat包目录(根据你的实际情况改动)cd /data/WISE_POM/tomcat-test/webapps/#移除所有文件(如果你是一个tomcat多个项目,不要这样做)rm -rf *#将war包复制到当前目录(原目录是在配置SSH服务器时设置的,注意调整)cp -f /data/wars/*.war./#war包改名(根据你的实际情况,看是否需要)mv eps-0.0.1-SNAPSHOT.war eps.war#启动tomcatcd /data/WISE_POM/tomcat-test/binsh startup.sh

部署jar包到windows服务器

由于jenkins在构建完成后,会自动杀死进程,所以采用使用WinSW将jar包,在windows服务器包装成一个服务。参考:http://t.csdnimg.cn/tq3sd


脚本文件内容

copy /Y C:\target\oa-wiseweb-2.0.8.jar D:\runable_jars\oa-wiseweb-lc\oa-wiseweb-2.0.8.jarnet stop oa-wiseweb-testnet start oa-wiseweb-test

1.将在配置SSH服务器设置的传输文件路径下的jar包,拷贝到项目目录下
2.重启服务

其他

钉钉机器人

  1. 安装插件
  2. 配置钉钉机器人(Manage Jenkins->Configure System)
  3. 项目配置时使用该机器人