win10搭建jenkins+SonarQube+maven实现项目自动化部署

Jenkins :基于Java开发的持续集成工具(既然是工具,肯定是用来减轻工作量的),可以监控持续重复的工作,如果这些重复的工作交给jenkins去做,这样不仅减轻了自己的工作量也实现了jenkins自身的价值 大笑.gif。就拿我之前在公司实习所做的项目来说:项目环境是Eclipse + Maven + SVN,项目发包部署通常是以下几个步骤:

  1、Eclipse中首先Clean一下项目,然后使用maven install操作等待打包完成。

  2、找到打好的jar包上传到windows服务器上。

  3、远程登录服务器进入jar包保存路径,执行 java -jar jar包名称.jar 启动jar包。

每次项目部署发包(正式和测试)都要执行这样的步骤,如果没有接触更简便的操作也就这样随遇而安了,后来我遇到了Jenkins和SonarQube......

SonarQube :管理代码质量的开放平台,可以快速定位代码中潜在的或者明显的错误,说白了就是用于分析代码。

好了,扯了这么多回归正题:

资源下载:

  资源文件     提取码:8yfc

一、jenkins安装有两种方式:

  1、直接安装msi文件。

  2、将war包放入tomcat的webapps文件夹下,执行tomcat。注意:webapps文件夹下不要有其它war包。

  安装完成之后地址栏输入: localhost:8080 点击回车,如果安装成功进入下面的页面:

 

 根据页面提示找到initialAdminPassword文件,拷贝文件里面的密码输入,点击继续,进行插件的安装,如果是新手建议选择 新手入门自定义安装。

过程中会出现如下界面:

 

 点击跳过插件安装进入创建管理员用户,界面如下:

 

 

 填写信息点击保存,Jenkins就安装完成了。

 配置:

  进入首页之后你的jenkins可能是英文的,如果想切换成中文需要安装插件 Localization:Chinese(Simplified) : Jenkins首页--> Manage Jenkins --> Manage Plugins进入进行安装。可以根据过滤进行搜索选择,如下图:

 

 在这个插件管理里面安装对应的插件(sonarQube Scan、svn、maven等插件),如果安装时选择的新手入门并且插件已经安装成功可跳过此步骤。至此Jenkins安装完成

二、SonarQube安装及配置

  新建mysql数据库,名字可随意取,我的数据库名字是“sonar”。

   1、将 SonarQube-xxx.zip 和 sonar-scanner-cli-xxx.zip 压缩包就行解压。

   2、进入sonarqube-xxx文件夹--> conf --> 打开sonar.properties 如下图:

    

  添加数据库信息:

    sonar.jdbc.username=root

    sonar.jdbc.password=xiechuang

    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

    sonar.web.port=9000

  如下图:

  

  保存。

  3、进入sonarqube-xxx文件夹--> bin --> 找到系统对应的版本,我的是win10 64位 -->以管理身份依次执行 InstallNTService.bat、 StartNTService.bat、StartSonar.bat。如果不用管理员身份执行可能会出现闪退或者 wrapper  | OpenSCManager failed - 拒绝访问。 (0x5) 。启动完成之后在浏览器地址栏输入 localhost:9000 然后回车,出现sonar的欢迎界面表示安装成功:

  

 

sonar汉化

  

 

  4、进入sonar-scanner-cli-xxx文件夹--> conf --> 打开 sonar-scanner.properties --> 添加信息:

    sonar.host.url=http://localhost:9000 

    sonar.sourceEncoding=UTF-8

    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

    sonar.jdbc.username=***

    sonar.jdbc.password=***

  

 配置:配置sonar-scan环境变量,这样在系统任何路径都能都能进行访问:

  1、新建系统变量  SONAR_SCANNER_HOME ,变量值为sonar-scan路径。

  2、在系统变量中的path变量中添加: %SONAR_SCANNER_HOME%\bin , 保存。

  3、打开cmd,输入 sonar-scanner,出现如下信息表示环境变量配置成功:

  

使用sonar-scan进行代码扫描有两种方式:

  1、在项目根目录下新建 sonar-project.properties 文件,文件中输入:

    sonar.projectKey=hzwq

    sonar.projectName=hzwq

    sonar.projectVersion=1.0

    #代码目录

    sonar.sources=src

    #classes文件目录,不加会报错,如果是多项目需要改成target,单项目使用.

    sonar.java.binaries=.

    sonar.language=java

    sonar.sourceEncoding=UTF-8

  保存。然后在cmd中输入 sonar-scanner,等待执行完毕出现EXECUTION SUCCESS说明执行完毕,去sonar服务器中查看,发现已经对项目代码进行了扫描:

  

 

 

   

 

   然后就可以查看对应的代码了。

  2、第二种方式就是在jenkins里面配置SonarQube插件,准备好了咱们就开始构建吧。

三、Jenkins + Sonar-Scan + maven进行项目的创建

   1、sonarQube Servers配置:进入Jenkins--> Manage Jenkins --> Configure System --> 找到 SonarQube servers 

  

 

   2、maven、sonar scan、svn、jdk配置:进入Jenkins--> Manage Jenkins -->  Global Tool Configuration :

  maven配置:

  

 

  

 

  SonarQube Scan配置:

  

 

   jdk配置:

  

 

   点击保存。

  3、新建Item

 

 

   点击确定。

   

 

   源码管理:

  

 

   构建完成之前的操作(Pre Steps):

 

 

   

 

  

 

 

 点击保存。

 

 

 

 

 

 

 

 等待执行完毕,如果控制台出现蓝色小球表明构建成功,如果是红色表明失败,具体信息需要查看日志。至此Jenkins + SonarQube + Maven实现自动化部署就完成了。

 

posted @ 2019-11-28 15:42  XieChuang  阅读(671)  评论(1编辑  收藏  举报