Jenkins配置自动部署构建完毕的jar包【测试成功】

艺帆风顺 发布于 2025-04-03 28 次阅读


一、需求背景

    jenkins已经搭建完毕,经过测试可以正常构建jar包,现在需要将构建完毕的jar包执行自动部署,发布到应用服务器。

二、配置步骤

    1、 首先安装Publish Over SSH插件;

    2、添加SSH相关配置信息:

        全局管理>Publish over SSH>添加目标连接

        根据情况勾选Use password authentication, or use a different key

    3、构建项目配置

  (1)设置构建后操作,选择添加的主机

    (2)配置传输路径及执行脚本

    4、应用发布服务器配置

     编写java重启脚本放置在/java/jenkins/target/restart-mytest.sh文件下:

    #!/bin/shcd /java/jenkins/targetps aux | grep java | grep my_test-0.0.1-SNAPSHOT.jar |grep -v grep | awk '{print $2}'| xargs kill -9/usr/local/java/bin/java -jar my_test-0.0.1-SNAPSHOT.jar &

        

      #!/bin/shcd /mnt1/jenkins/testcp /mnt1/jenkins/jenkins_home/workspace/mytest/target/my_test-0.0.1-SNAPSHOT.jar .ps aux | grep java | grep my_test-0.0.1-SNAPSHOT.jar |grep -v grep | awk '{print $2}'| xargs kill -9java -jar my_test-0.0.1-SNAPSHOT.jar &                                                                                                                                                                                                  

      配置消息通知脚本Msg.sh

        curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=24f30302-5c3f-4777-a6e1-XXXXXX8'  -H 'Content-Type: application/json'  -d ' { "msgtype": "markdown", "markdown": { "content": "构建完毕并执行自动化部署font color="warning">my_test-0.0.1-SNAPSHOT.jarfont>启动成>,请确认服务是否正常。n >访问地址:font color="comment">http://192.168.3.66:8099/font>" } }'

            

        三、配置完毕,进行测试

            修改源代码,进行提交:

          package com.sg.my_test;
          import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;
          @SpringBootApplication@RestControllerpublic class MyTestApplication {
          public static void main(String[] args) { SpringApplication.run(MyTestApplication.class, args); }
          @RequestMapping("/") public String hello(){        return "2023-09-01 9:16"; }}

          已经自动更新为9:16,证明该需求已经实现。