一个springboot项目的jenkins持续集成配置

目录

1.项目基本情况

2.jenkins的下载

1)  安装jdk

2)下载、启动和配置jenkins

3. 启动Jenkins

4. 安装Jenkins插件

5. 重启jenkins

6.jenkins工具的配置

1) jdk的路径配置

7.创建springboot项目的持续集成任务

扫描二维码关注公众号,回复: 15598875 查看本文章

1)  新建项目

2)代码拉取

3)  打包项目

4)启动jar程序

5)解决jenkins构建结束后终止所有它启动进程的问题

6)再次build now,验证是否正常


1.项目基本情况

该项目是  zhangjianfen 同学的软件配置管理期末的项目

项目存储在gitee上,路径:

软件配置管理期末: 1111111111111https://gitee.com/zjf18664209766/project.git

2.jenkins的下载

可请自行百度。或者参考超星班级资料中的详细步骤

1)  安装jdk

请先确保安装了jdk,我安装的是JDK1.8

2)下载、启动和配置jenkins

下载路径:

清华镜像  Index of /jenkins/war/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror  

下载想要的版本,建议:2.364.1 LTS

注意,jenkins的版本和jdk版本

Jenkins是java程序,需要和jdk的版本匹配。学校计算机机房jdk版本1.8,所以jenkins建议选择2.364.1,否则版本太高的jenkins不支持

3. 启动Jenkins

jenkins jar包所在的文件夹下 打开命令行窗口执行如下命令启动jenkins并指定jenkins端口号为8899:大家也可以根据需要修改端口号

java -jar jenkins_2.346.war --httpPort=8899 

4. 安装Jenkins插件

大家可以启动jenkins后,通过jenkins安装插件。也可以将下载的插件放到jenkins主目录的plugins目录下,

在这里为了大家能快速安装插件,大家可以将我的plugins压缩包里的内容复制到你的jenkins

链接:https://pan.baidu.com/s/1NvVoJUsgK1Zc438kQ-kTCw?pwd=6666 
提取码:6666

5. 重启jenkins

安装插件后需要重启才能使用插件,在jenkins运行的命令窗口中输入 ctrl+c终止程序,然后再次运行

java -jar jenkins_2.346.war --httpPort=8899 

6.jenkins工具的配置

1) jdk的路径配置

7.创建springboot项目的持续集成任务

1)  新建项目

设置项目名称、任务类型(选择自由风格)

  

2)代码拉取

拉取代码的仓库路径:软件配置管理期末: 1111111111111https://gitee.com/zjf18664209766/project.git

 点击 builid now,尝试一下,看能否正常拉取代码

 

查看控制台详情

3)  打包项目

 本项目是maven项目。我们可以用 mvn clean package命令来编译打包

但是需要注意的是,该命令需要在pom.xml文件所在路径执行,所以我们需要在编译打包前切换到该路径

 jenkins添加一个 Excute windows batch command的步骤:

 输入windows 批处理命令如下,期中 .\表示当前路径,jenkins默认路径就是当前工作区目录:

cd  .\04开发\module_campus
mvn clean package

 再次构建。确认可否构建出jar包

4)启动jar程序

可以用 java -jar  xxxx.jar  --server.port=端口号  包的方式来启动程序

但是这样,构建过程将一直处于执行中的状态。所以我们可以增加 start /B  以后台方式运行

当然为了找到jar包,我们需要切换到jar文件所在的路径

excute windows batch command步骤,输入的内容如下

cd  .\04开发\module_campus\target
start /B cmd /c "java -jar  module_campus-0.0.1-SNAPSHOT.jar   --server.port=8181  "

具体含义如下:

cd命令用于切换当前目录到 当前目录的 子目录04开发\module_campus\target中

  • start:启动一个新的命令行窗口,以异步方式运行下面的命令。
  • /B:以后台模式运行新命令行窗口,即不在当前命令行窗口输出新窗口的信息。
  • cmd:运行cmd.exe(Windows命令行解释器)。
  • /c:运行完命令后关闭命令行窗口。
  • "java -jar  module_campus-0.0.1-SNAPSHOT.jar   --server.port=8181":要在新命令行窗口中运行的命令。这是一个Java命令,用于启动指定的jar文件,并设置应用程序的运行参数为--server.port=8181。

 再次构建。确认构建是否成功,可否通过localhost:8181来访问程序

这时你会发现构建进度到2/3时, localhost:8181可以访问到系统,但构建完成后,又不能再访问了。

这是由于jenkins构建完成后,会终止掉所由它启动的程序。

5)解决jenkins构建结束后终止所有它启动进程的问题

为了解决该问题,在 Manage Jenkins -> Configure System -> Global properties 全局属性 页面 ,我们可以为jenkins添加一个全局BUILD_ID,值为allow_to_run_as_daemon

如下图所示,再运行配置,就不会出现应用服务不能访问的问题了 

此时若再次build now,程序可以正常访问。

 6)解决再次build now时,由于jar包正在运行,无法构建新包的问题

为了解决此问题,我们需要在构建之前终止应用程序,

之前我们启动程序时设置了端口8181,现在我们可以通过端口8181来找到进程,从而关闭它

其中,输入的命令为:

FOR /F "tokens=5" %%P IN ('netstat -ano ^| findstr :8181') DO taskkill /F /PID %%P  || exit 0

具体含义是:

FOR /F "tokens=5" %%P IN ('netstat -ano ^| findstr :8181') :这个命令使用了FOR循环和netstat命令,通过管道符将netstat的输出传递给findstr命令,找到在本地8181端口上监听的进程ID。

DO taskkill /F /PID %%P :这个命令使用了DO关键字,执行taskkill命令,并强制结束找到的进程ID。

 || exit 0:这个命令是一个错误处理语句,如果上一个命令执行失败,则退出程序,否则返回0表示执行成功。
总之,该命令的作用是强制结束在本地8181端口上监听的进程。

6)再次build now,验证是否正常

构建后程序运行正常。再次构建,程序还是能正常运行,而且是最新的构建的jar包奥

猜你喜欢

转载自blog.csdn.net/caohongxing/article/details/131264494