「学习笔记」Jenkins - 使用Maven构建Java应用程序
1. 添加git凭据
若安装Jenkins时安装的推荐插件,git已经默认安装了,我们添加git凭据:
系统管理(Manage Jenkins)->Manage Credentials->全局->添加凭据。- 类型选择
SSH Username with private key,往下滑到Private Key,并勾选Enter directly,在Enter directly的key区域点击Add,粘贴本机git私钥,点击确定。 - 类型选择
Username with password,填写git用户名和密码,点击确定。
- 类型选择
本机Git私钥获取:
[root@localhost ~]# cat .ssh/id_rsa
git公钥私钥生成详细细节参考物理机安装CentOS 8.0的安装配置Git。
2. Jenkins配置Maven与Publish Over SSH插件
- 在插件管理搜索
Maven,找到Maven Integration并勾选,然后点击直接安装。 - 接下来同样方法安装
Publish Over SSH插件(用来通过ssh命令发送Maven的构建)。 - 配置全局变量,添加要部署的远程用户:
系统管理(Manage Jenkins)-> 点击Configure System-> 往下滑到SSH Server;- 在
SSH Servers这里点击新增,填写用户信息(Name:此配置名,HostNmae:要连接的SSH主机名或IP地址,UserName:远程用户名); - 点击
高级配置密码,勾选Use password authentication, or use a different key,在Passphrase / Password输入远程用户密码; - 点击
Test Configuration测试能否连通,最后点击保存。
- 配置mavne的jenkins本地仓库:
系统管理(Manage Jenkins)-> 点击Configure System-> 找到Maven项目配置;Local Maven Repository-> 选择Local to the workspace->保存。
- 全局工具配置:
系统管理(Manage Jenkins)-> 点击Global Tool Configuration;Maven配置->默认setting/全局setting选择Settings file in filesystem-> 填写本机安装Maven的setting路径,如/usr/local/apache-maven-3.6.3/conf/settings.xmlJDK->JDK安装->新增JDK->JAVA_HOME填写java安装目录,如/usr/lib/jvm/java-openjdkGit->Git installations->Path to Git executable填写/usr/bin/git(可用which -a git查看)Maven->Maven安装->新增Maven->MAVEN_HOME填写Maven安装目录,如/usr/local/apache-maven-3.6.3
3. 使用Maven构建Java应用程序
- 新建Item, 输入任务名称,选择Maven项目,点击“确定”
- 源码管理,选择Git,填写仓库地址(
Repository URL)和选择凭据(Credentials) - 构建环境,勾选
Add timestamps to the Console Output,加上时间戳 - Build,
Goals and options根据自己情况自行修改:clean package -pl demo -am -Dmaven.test.skip=true -P beta- -pl 选项后可跟随{groupId}:{artifactId}或者所选模块的相对路径(多个模块以逗号分隔),这里只想打包demo模块
- -am 表示同时处理选定模块所依赖的模块
- -P 打包的环境
- Post Steps,发布步骤,这里可以选择执行shell脚本Execute shell(发布到和Jenkins是同一台服务器),Send files or execute commands over SSH(不同服务器)。
4. Maven构建配置【Post Steps】
- 若发布到和Jenkins是同一台服务器,下拉框列表选择
Execute shell,然后填写shell脚本; - 若不在同一服务器,下拉框选择
Send files or execute commands over SSH,配置SSH ServerSource files填写Maven本地打包后Jar包路径,如:target/demo-0.0.1-SNAPSHOT.jarRemove prefix去除前缀,如:target/Remote directory拷贝到Linux服务器的路径,如:/home/jenkins/testExec commandJar包拷贝后,执行脚本运行Jar包。
- shell脚本详情(填写时去掉注释):
#后台执行
BUILD_ID=DONTKILLME
# 进入到项目
cd /home/jenkins/test
# 找到原进程,kill
Project_name=test
pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')
kill -9 $pid
# 启动jar
nohup java -jar $Project_name.jar > run.txt &
END .
相关系列文章
- 「学习笔记」环境配置 - 本地开发环境配置笔记
- 「学习笔记」环境配置 - PHP多版本共存
- 「学习笔记」Nginx常用配置详解
- 「工程实践」使用Nexus搭建Maven私服(CentOS 8)
- 「工程实践」Centos 8 私人Git服务器搭建(Gogs)
- 「学习笔记」Tomcat9安装及多实例多应用配置(CentOS 8)
- 「学习笔记」CentOS 8 安装和配置 NFS 服务器
- 「学习笔记」Centos8 安装 FastDFS 6.06
- 「学习笔记」CentOS 8 常用软件安装(MySQL Nginx SVN Redis)
- 「学习笔记」Centos8安装部署Node+MongDB+YApi(接口管理)
- 「学习笔记」Linux - Shell脚本部署Java应用
- 「学习笔记」Linux - Shell 文本处理
- 「学习笔记」Linux - Shell 函数的用法
- 「学习笔记」Linux - Shell 变量的用法与数学运算
- 「学习笔记」Linux - Shell 编程入门
- 「学习笔记」Linux常用命令整理
- 「学习笔记」Docker容器与镜像的使用
- 「学习笔记」Docker简介与安装(Linux环境centos)
- 「工程实践」Jenkins自动部署Jar到远程服务器
- 「学习笔记」Jenkins - 使用Maven构建Java应用程序
- 「学习笔记」Jenkins - 声明式流水线Jenkins Pipeline
- 「学习笔记」Jenkins - 安装Jenkins(Linux环境centos)
- 「学习笔记」物理机安装CentOS 8
- 「学习笔记」环境配置 - Redis与MySQL多实例配置