说明:部署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. 立即构建,查看控制台输出,成功后,浏览器访问。

jenkins+maven+svn实现springboot项目的自动化部署过程的更多相关文章

  1. Jenkins+maven+SVN构建java项目中遇到的问题及解决

    [ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a g ...

  2. Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记

    前言    持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新 ...

  3. Jenkins学习总结(3)——Jenkins+Maven+Git搭建持续集成和自动化部署的

    前言 持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新项目正 ...

  4. 利用PowerShell+Jenkins,实现项目的自动化部署

    当项目越来越庞大,部署环境越来越多以后,就会越来越依赖于自动化.比如本人公司的项目,目前有6个web和4个windows service,同时本地有两套环境:开发自测试环境和QA测试环境.每次版本发布 ...

  5. Docker+Jenkins+Maven+SVN搭建持续集成环境

    Docker+Jenkins+Maven+SVN搭建持续集成环境 环境拓扑图(实验项目使用PHP环境) 发布流程图 环境说明 系统:Centos 7.4 x64 Docker版本:18.09.0 Ma ...

  6. 利用Jenkins实现JavaWeb项目的自动化部署

    修改代码,打包,上传,重启... 大把的时间花费在这些重复无味的工作上.笔者与当前主流的价值观保持一致:我们应该把时间花费在更有意义的事情上.我们可以尝试借助一些工具,让这些重复机械的工作交给计算机去 ...

  7. 基于Maven的SpringBoot项目实现热部署的两种方式

    转载:http://blog.csdn.net/tengxing007/article/details/72675168 前言 JRebel是JavaEE中比较流行的热部署插件,可快速实现热部署,节省 ...

  8. (四)创建基于maven的javaFX+springboot项目,用户界面与后台逻辑分离方式

    下面来介绍创建maven的javaFX+springboot项目,基于用户界面与后天逻辑分离的方式,用户界面使用fxml文件来常见,类似于jsp,可以引入css文件修饰界面 maven依赖 <d ...

  9. (三)创建基于maven的javaFX+springboot项目创建

    创建基于maven的javaFx+springboot项目有两种方式,第一种为通过非编码的方式来设计UI集成springboot:第二种为分离用户界面(UI)和后端逻辑集成springboot,其中用 ...

随机推荐

  1. Java HashMap用法

    为了做题用Java语法替代C++map的常用语法,记录一下,剖析原理以后再补上. 1.import java.util.HashMap;//导入; 2.HashMap<K, V> map= ...

  2. 使用threaddump-analyzer 快速查看jvm thread 状态信息

    日常开发中,我们可以需要通过thread dump 查看线程信息,比如锁,spotify 团队提供了一个web 界面,很方便 以下是简单使用,同时添加了docker 支持 添加docker 支持 cl ...

  3. 基础知识 wps去广告

    原文:http://www.360doc.com/content/19/0618/15/38017100_843312032.shtml 原文:http://wps.crcc.cn/

  4. SQL Server 迁移数据库 (三)使用SQL脚本

    1. 创建脚本 1.1 在需要迁移的数据库上右击>Tasks>Generate Scrips 1.2 前两步直接Next,第三步我这里选择Save to Clipboard,因为如果选Sa ...

  5. 安装oracle 11g及初次链接使用, 解锁及常用命令

    1. 安装方法参考原创: https://blog.csdn.net/projectNo/article/details/76533921 2.初次链接数据库时,注意以下: 1. window + r ...

  6. Note | Python

    目录 PyCharm+远程服务器 预备工作 Pycharm配置 list方法 os imageio Python Image Libarary (PIL) random time PyCharm+远程 ...

  7. ubuntu16.04安装QGIS工具

    指令安装安装qgis可以通过添加安装源的形式进行 sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable sudo apt-get updat ...

  8. 「ASCII 流程图」工具——Graph Easy

    https://juejin.im/post/5a09c43451882535c56c6bbf 「ASCII 流程图」工具——Graph Easy // 1. brew install graphvi ...

  9. NIO你真正了解多少?

    解释一下java.io.Serializable接口 类通过实现 Java.io.Serializable 接口以启用其序列化功能.未实现此接口的类将无法使其任何状态序列化或反序列化. IO操作最佳实 ...

  10. Spring笔记01

    spring 第一章 Spring模块规划图 核心架包 spring-beans-4.0.0.RELEASE. spring-core-4.0.0.RELEASE. spring-context-4. ...