JenKins整合Maven自动化构建


          最近看了好多招聘信息,发现有要求会Jenkins结合Maven做自动化构建的,刚好最近工作中有用到,上手很简单,功能很实用,但是也有很多坑需要注意,于是就写了这篇文章。

         废话不多说,直接上图。

        由于项目是maven项目,由10个项目相互依赖,因此创建了个build项目,里面只有个pom.xml文件,来构建这10个项目。

        svn结构图如下:

      

      因此在配置jenkins时,如下图所示:


      这里有一点要说明,也是本人踩过的坑,build项目一定要放在最上面配置,否者整和所有项目的pom.xml文件不会生效。

      还有一个坑,由于maven的版本原因整和其他工具会有bug,jenkins整和maven(3.3.5以上版本包括3.35)会出现bug,使用3.3.3以下版本包括3.3.3则不会出现这个问题(含泪趟坑).

     添加构建步骤:

     配上build项目中的pom.xml文件,输入maven构建命令

    

        剩下的步骤就是把maven项目构建后生成的项目war包自动部署到我们的tomcat服务器中,试过很多方式,包括使用jenkins自带的插件,由于其他未知原因均未成功,这里推荐使用Execute shell,使用shell命令实现自动部署,废话不多说,直接上我自己的代码。

#!/bin/sh

projname=项目名
projpath=maven构建生成war包的路径
uploadpath=/usr/java/report/apache-tomcat-8.0.15/webapps

if [ -f "${projpath}/${projname}.war" ]; then

rm -rf uploadpath/${projname}*

cp ${projpath}/${projname}.war ${uploadpath}

pid=`ps -ef |grep tomcat|egrep -v "grep"|grep apache-tomcat-8.0.15|awk '{print $2}'`
if [ -n "$pid"];then
sh /usr/java/report/apache-tomcat-8.0.15/bin/shutdown.sh
fi
sh /usr/java/report/apache-tomcat-8.0.15/bin/startup.sh

else 
	echo "war 包不存在"
	exit 1
fi
	echo "success"
	exit 0


关于邮箱的配置这里就不另加缀述了

(第一次写博客,希望能帮广大Coder们节省时间,关于样式,以后有机会我多改进)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值