Docker+Jenkins+SVN+Tomcat+SonarQube构建之三:Jenkins建项目,打包发布到tomcat,同时生成sonarQube的代码检查报告

Jenkins的打包发布功能非常强大,有各种功能,我这里只配置最简单的打包发布和生成sonarQube报告,还有很多邮件通知,定时发布等功能,大家可以自己按照说明文档完成。

1.在Jenkins服务器上新建一个job

 2,然后进入这个job,点设定,开始设定代码库,maven,sonarQube

首先设定代码库的地址,还有就是能checkout代码的用户名和密码。

 随后我们配置maven执行代码编译和打包。

我们再build的部分选择,调用maven,然后选择我们配置的maven环境的名称。执行clean package命令。

 这个maven的设置还是很简单的,只要环境设定的没有问题,一版打包不会有问题。如果打包过程中报找不到pom文件,那就需要你检查你下载的代码的pom文件是否在workspace的根目录。

 编译和打包完成后,我们可以配置sonarQube了。

首先指定我们设定的sonarQube server的名字

 然后写我们分析代码的property

 这里有两点需要注意,一是如果sonarQube server对应的jdk版本和编译代码的jdk版本不一致,就会报我前面章节说的版本不一致的问题,所以,环境配置前最好确认好版本。还有一点就是我一开始没有设定sonar.java.binaries=**/target/classes/**,这样就会报下面的错误。

org.sonar.squidbridge.api.AnalysisException: Please provide compiled classes of your project with sonar.java.binaries property

 最后,我们把做成的war包发布到tomcat上。在Jenkins里面做如下设定。

 这一步我一开始写的war包的绝对路径,报了下面的错误。

Deploy war/ear to a container’ aborted due to exception: java.lang.InterruptedException

原因是traget/xxx.war 路径不是直接路径,也就是说在把我们的war包推送到容器的时候找不到这个war包,发生异常,可能是因为目录结构不对。我就直接写成了直接写 **/*.war。

至此,一个在docker里面,用Jenkins从svn上面下载代码,打包,代码分析,发布到tomcat上的流程就执行完了。

结果

Jenkins的构建执行结果

SonarQube代码分析的结果

 

网站的访问结果

 

 分享到此结果,希望以后和大家共同学习和进步。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值