爱萝莉真是太好了 爱萝莉真是太好了

努力让自己变得更优秀呀!

目录
Jenkins+Maven+Git自动化构建Java项目
/  

Jenkins+Maven+Git自动化构建Java项目

  本教程是Maven+Git自动化构建项目
    前提:安装好Jenkins
    1.工具设置
    2.Maven(git)项目接入
      2.1 安装相关插件
      2.2 新建项目
        2.2.1 开始创建
        2.2.2 源码管理
        2.2.3 构建触发器
        2.2.4 Build设置
        2.2.5 Post Steps 设置
        2.2.6 邮件设置
      2.3 手动触发构建
      2.4 自动触发构建
      3.关于maven下载包的一个问题(重要)

本教程是 Maven+Git 自动化构建项目

前提:安装好 Jenkins

点击跳转查看安装教程

1.工具设置

进入:系统管理 / Global Tool Configuration (全局系统配置)

配置 maven 的 settings 文件,JDK 的安装目录,maven 的安装目录

image20200929180356432.png

image20200929180459929.png

最后点击保存

2.Maven(Git)项目接入

2.1 安装相关插件

我已经安装过了,如果没有安装的在可选插件里搜索,然后选中点击“直接安装”即可

2.2 新建项目

2.2.1 开始创建

主页:点击“新建”;
项目类型:输入项目名称 first,类型选择“构建一个 Maven 项目”(如果没有此项可选,请检查插件“Maven Integration plugin”是否已安装);

image20200929182038600.png

2.2.2 源码管理

image20200929182606603.png

2.2.3 构建触发器

image20200929182843773.png

触发器选择轮询 “H/2 * * * *” 也就是两分钟轮训一次

点击查看日程表的写法

2.2.4 Build 设置

image20200929183039579.png

Root POM: 指定 pom.xml 相对路径
Goals and options: 指定 mvn 执行目标或选项,设置为 package -Dmaven.test.skip=true

2.2.5 Post Steps 设置

定制构建后的操作,通常选择“Run only if build succeeds”,支持 shell 等脚本;

1## 脚本工作目录为: /var/lib/jenkins/workspace/first
2sudo systemctl stop tomcat
3sudo cp -f target/*.war /opt/apache-tomcat-8.5.9/webapps/
4sudo systemctl start tomcat

这个脚本根据自己的实际情况去编写

2.2.6 邮件设置

2.3 手动触发构建

进入项目详情,点击立即构建

image20200929183431264.png

刷新一下下边有构建历史

image20200929183736394.png

点击进入历史详情,里边有控制台输出日志,如果有报错可以纠正之后再次手动构建

image20200929183824064.png

2.4 自动触发构建

刚刚在构建触发器的时候选择了轮询,也就是说会在设置的时间拿去 Git 的提交记录,如果有 push,则会触发自动构建,在详情可以看到轮询日志

3.关于 maven 下载包的一个问题(重要)

如果项目的 pom 文件更新了(升级了版本或者添加了新包之类的),本地环境 maven 构建是没有问题的,但是 jenkins 部署构建的时候会报错

1[ERROR] Failed to execute goal...................(No such file or directory)

错误提示为找不到什么什么包,如果去 maven 的 lib 目录下看,确实没有下载出来,导致这个问题的原因是文件夹的所有权问题

maven 的 lib 目录是 root 所有者(我的是 root,各自的可能不尽相同),jenkins 执行的时候用户是 jenkins,权限问题导致写不进去文件,其实细看构建日志会发现里边由很多 warning 信息

image20200929224944620.png

只要把 maven 的 lib 目录改成 jenkins 所有者就可以了


标题:Jenkins+Maven+Git自动化构建Java项目
地址:https://www.1-love.cn/Jenkins-Maven-Git.html