说明:部署springboot项目的jar

前提(参考:https://www.cnblogs.com/myitnews/p/11493779.html):

  • 全局安全配置(前面配置过)
  • 全局工具配置(前面配置过)
  • 管理插件(根据需要安装插件,前面配置过)
  • 已将项目代码提交到SVN仓库。

1. 创建任务

2. 配置项目

(1) General

勾选丢弃旧的构建,选择是否备份被替换的旧包。我这里选择备份最近的10个。

(2) 源码管理

(3) 构建环境

代码构建的过程中会将日志打印出来。

(3) Build

clean install -Dmaven.test.skip=true -Ptest

(4) Post Steps

#!/bin/bash
# /opt/jenkins/deploy/是新建的目录
# 大致意思就是进入目录,stop.sh:停止应用; replace.sh:拷贝应用jar; startup.sh:运行jar
cd /opt/jenkins/deploy/
./stop.sh
./replace.sh
echo "Execute shell Finish" BUILD_ID=dontKillMe nohup /opt/jenkins/deploy/startup.sh &

在/opt/jenkins/deploy/目录下创建startup.sh、stop.sh、replace.sh。

stop.sh、replace.sh和startup.sh内容如下:

stop.sh

#!/bin/bash
# stop.sh
# shelloworld-0.0.1-SNAPSHOT.jar是生成的jar包名称
echo "Stopping SpringBoot"
pid=`ps -ef | grep shelloworld-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if ["$pid" == ""]
then
echo "helloboot is already stop!"
else
echo "kill -9 的pid:"+$pid
kill -9 $pid
fi

replace.sh

#!/bin/bash
# replace.sh
# HelloWorld 是在Jenkins中创建的任务名称
# /opt/jenkins/project 是新建存放jar包的目录,将Jenkins生成的jar包拷贝到这个目录下
cp /root/.jenkins/workspace/HelloWorld/target/shelloworld-0.0.1-SNAPSHOT.jar /opt/jenkins/project

startup.sh

#!/bin/bash
# startup.sh
java -jar /opt/jenkins/project/shelloworld-0.0.1-SNAPSHOT.jar>log.file 2>&1&

3. 立即构建,查看控制台输出,成功后,浏览器访问。

最新文章

  1. Spring泛型依赖注入
  2. CSS实现各种形状
  3. oracle 行转列、列转行
  4. C#检测网卡和网络统计信息
  5. java获取路径的方法
  6. 【BZOJ-1090】字符串折叠 区间DP + Hash
  7. MysqlDumpslow
  8. android重写view和viewgroup的区别
  9. 向PE文件中添加一个Section
  10. Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性加入图标
  11. oracle 索引 。其中全文检索最变态
  12. tar 压缩和解压缩使用笔记
  13. 在多机器上远程执行JMeter
  14. 基于Django rest framework 和Vue实现简单的在线教育平台
  15. kubernetes 基础命令及操作
  16. [luogu3369][普通平衡树]
  17. ubuntu install google-chrome-stable
  18. TQ2440开发板挂载U盘出现乱码
  19. The request sent by the client was syntactically incorrect.
  20. android设备上运行i-jetty服务

热门文章

  1. [PHP] 阿里云 Composer 全量镜像
  2. Vue 变异方法splice删除评论功能
  3. 关于XSS攻击
  4. 第01组 Beta版本演示
  5. UOS系统 - 国产统一操作系统UOS的基本知识
  6. SAS——proc format的其他应用:invalue,picture,default,mult,prefix,noedit,_same_,_error_,other
  7. 【Python】运算符
  8. [转载].NET ASP.NET 中web窗体(.aspx)利用ajax实现局部刷新
  9. C# 多线程处理List数据
  10. Python - 错误和异常 - 第十九天