码迷,mamicode.com
首页 > 其他好文 > 详细

如何使用jenkins部署maven父子工程

时间:2019-06-03 14:02:34      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:存在   方式   自动部署   bash   com   开始   inf   权限   class   

 最近使用jenkins自动部署项目时遇到一个问题,如果部署单个的maven工程,没有什么问题,

但是在部署maven创建的父子工程,如果只从svn或者git上拉取子工程源码时,会报找不到父

工程pom或者relativePath的错误,这是因为,maven子工程是依赖父工程的pom的,所以拉取

代码的时候要先拉取整个父工程下来,然后再单个拉取子工程,也就是父工程创建一个任务,

然后子工程各一个任务。操作方式如下:

说明:我使用的jenkins是root权限

首先登陆jenkins到达jenkins工作台,Jenkins搭建可以搜一下,在这里只有使用方法

技术图片

点击新建任务

技术图片

开始配置

技术图片

技术图片

点击添加按钮

技术图片

技术图片

技术图片

技术图片

至此,父工程就可以构建一下,第一次构建会比较慢,下载的jar包比较多

技术图片

构建完以后,就可以到服务器上查看打的jar包,具体路径可以问一下搭建jenkins的人员

下面就可以创建子工程的任务了,不同的地方主要是下面两个:

第一个是在源码管理的时候,直接填写子工程的URL就行了

技术图片

第二个是在构建的时候,就可以填写执行shell脚本来进行自动化部署项目了

技术图片

 技术图片

脚本如下,可根据自己需要进行更改

BUILD_ID=DONTKILLME
#!/bin/bash
#获取你想运行jar包的进程号
pid=`ps -ef | grep 子工程jar包名称.jar | grep -v grep | awk ‘{print $2}‘`
#如果存在则把该进程杀掉
if [ -n "$pid" ]
then
   echo "kill -9 的pid:" $pid
   kill -9 $pid
fi
echo "复制jar包"
#把jenkins打的jar包复制到自己指定的目录下
cp  /root/.jenkins/workspace/父工程项目名称/子工程项目名称/target/子工程jar包名称.jar /自己指定的目录路径/
echo "启动jar包"
#最后启动jar包并把日志输出到指定的文件中以便查看
nohup java -jar /自己指定的目录路径/子工程jar包名称.jar > /自己指定的目录路径/credit_manage.log &

 

如何使用jenkins部署maven父子工程

标签:存在   方式   自动部署   bash   com   开始   inf   权限   class   

原文地址:https://www.cnblogs.com/java-spring/p/10967151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!