任务背景

该项目包含4个程序包:a.jar,b.jar,c.jar,d.jar,每次启动前需要修改程序中的配置文件(修改数据源配置),然后按照先后顺序启动。

任务目标

1.利用jenkins拉取代码,且在打包前就修改好配置文件
2.打好包后,将4个程序包传输至测试服务器,并远程执行事先写好的启动脚本

配置步骤

1.先新建一个Maven任务,配置好源码地址以及build配置

2.完成上述配置后,构建一次,看看工作空间的内容
这里显示的就是这个工程的代码结构,即从git拉取代码后在jenkins工作空间的展示情况

3.修改配置文件
这次需要修改2个配置文件,一个是appr-law-items-service.jar中的application.yml,一个是appr-law-regulation-service中的application.yml
修改配置文件,利用的sed命令
可以在Pre Steps中添加“执行shell”
rm -f ${WORKSPACE}/apr-aw-api-gateway/target/*.jar
rm -f ${WORKSPACE}/appr-law-items-service/target/*.jar
rm -f ${WORKSPACE}/appr-law-registry-eureka/target/*.jar
rm -f ${WORKSPACE}/appr-law-regulation-service/target/*.jar
sed -r -i 's#192.xxx:3306/law_item#192.1xxx:3306/law_item#g' ${WORKSPACE}/appr-law-items-service/src/main/resources/application.yml
sed -r -i 's#password: minstone#password: 123456#g' ${WORKSPACE}/appr-law-items-service/src/main/resources/application.yml
sed -r -i 's#192.xxx:3306/law_item#192.xxx:3306/law_item#g' ${WORKSPACE}/appr-law-regulation-service/src/main/resources/application.yml
sed -r -i 's#password: minstone#password: 123456#g' ${WORKSPACE}/appr-law-regulation-service/src/main/resources/application.yml

这里的关键在于,如何找到application.yml文件的位置(注意是打包前这个文件的路径)
开始我找的是 “appr-law-items-service / target / classes /"下的application.yml

后来发现不对,改这个文件没有效果(这个是打包后的文件了)
后来又找到 appr-law-items-service / src / main / resources /的application.yml

这个是源码中的配置文件,修改这个文件就会生效
改动位置如下

经过上述配置就达到了打包前修改配置文件了目的(也可以下载打包好的jar文件,解压看看配置文件是否修改成功)
4.利用send build artifacts over ssh 插件配置远程部署
jenkins安装在154服务器,现在需要把打好的程序包传输到133服务器,并在133服务器进行远程部署
在构建后操作中添加send build artifacts over ssh 插件

Transfer Set Source files:需要上传的文件(相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)(直接到工作空间中找到这个文件,拷贝目录即可)

Remote directory:远程目录
Exec command:把你要执行的命令写在里面
高级:
Flatten files:只上传文件,不创建目录(除了远程目录)
最终构建完成后,打开133服务器,切换到ZFSXK目录,查看,如下
显示传输过来的4个jar包,且执行了start.sh文件

转载于:https://www.cnblogs.com/hanmk/p/10918735.html

jenkins配置自动部署java程序相关推荐

  1. 这样用Docker 搭建 Jenkins 实现自动部署,你知道吗?

     一.为什么用jenkins 主要是我们现在的项目都是采用手动部署的,每当给项目中新增一个功能就必须执行(打包--测试--上传测试修复的包到指定服务器--部署上线),这个流程操作起来繁杂,不小心就可能 ...

  2. jenkins android md5,Jenkins配置自动打包 -- 遇到的坑

    1.把gradle路径设为本地路径 Jenkins部署在远程linux服务器上,使用git将代码下载到服务器路径下后,无法使用gradle命令 因为默认配置都是gradle同步时 实时从网上下载,进入 ...

  3. 爬虫实战:CentOS安装JDK,部署Java程序,利用screen使其保持在前台运行

    一.CentOS 7 yum 安装与配置 JDK 参考:https://blog.csdn.net/github_38336924/article/details/82221258 1.检查是否已安装 ...

  4. Jenkins配置自动打包app发布蒲公英显示二维码

    Jenkins配置自动打包app发布蒲公英显示二维码 搞了一周,终于弄好了,下面就是见证奇迹的时刻. 1.下载Jenkins,去官网点这里选择Windows版本: 2.下载完是个zip解压 安装 一路 ...

  5. jenkins配置自动发送邮件,抄送

    参考链接: jenkins配置自动发送邮件:https://www.cnblogs.com/gcgc/p/5631385.html 常用邮箱IMAP/POP3/SMTP 设置:https://www. ...

  6. Linux自动发布Java程序脚本

    Linux自动发布Java程序脚本 1. 编译脚本 2. 启动脚本 3. 停止脚本 4. 最终发布脚本 1. 编译脚本 #! /bin/bash time="`date +%Y%m%d-%H ...

  7. 配置多个git账号_docker随手笔记第七节 jenkins通过git部署java微服务插件安装

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  8. Jenkins之自动部署、代码安全扫描、自动化接口测试

    搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo rpm -- ...

  9. jenkins+pipeline+Amazon_EKS部署java服务

    1.下载安装Kubernetes Continuous Deploy 下载地址 2.配置秘钥连接EKS 如下 当按照下面的方式连接EKS时出现下面报错 script{ kubernetesDeploy ...

最新文章

  1. 110道 Jvm面试题总结及答案 (持续更新)
  2. 一千个不用 Null 的理由,你还用?
  3. 第一章 关于python
  4. python统计行号_如何使用Python脚本分析CPU使用情况的?
  5. 亿级消息系统的核心存储:Tablestore发布Timeline 2.0模型
  6. 高效集成连接管理与平台运营 中琛物联赋能智慧城市建设
  7. JavaScript 模块化简述
  8. python核心技术实战详解_Python核心技术实战详解
  9. 从零开始搭建一个群管机器人
  10. matlab 求副瓣电平,一种阵列天线一维方向图的副瓣电平计算方法与流程
  11. 机器学习笔记 - 探索性数据分析(EDA) 概念理解
  12. matlab 二维地图常用绘图函数用法(plot,fill,rectangle)
  13. 由浅入深玩转华为WLAN—25 高可用性系列(1)双击热备概述
  14. Zlib的安装与测试
  15. 两张表格数据匹配删除
  16. 数据清洗及OpenRefine工具
  17. 【Ubuntu】【Linux】命令卸载软件
  18. Centos7系或中标麒麟ifconfig/ip addr无法显示ip地址的详细解决方法
  19. TensorFlow实战系列11--卷积层网络结构
  20. Sensor简介(一):摄像头模组CCM的结构和原理简述

热门文章

  1. Parameters: { “silent“ } might not be used. This may not be accurate due to some parameters are
  2. 08-02-19pe_xscan 增加Windows启动模式和对SuperHidden值检测和报告
  3. 《互联网理财一册通》一一1.3 开通网上银行
  4. 运筹优化(二)--线性规划概念及应用模型
  5. Unity报错之【ArgumentOutOfRangeException: Index was out of range........】
  6. 本经阴符七术——盛神法五龙
  7. 12.2 做一个读书的读书人——《逆袭大学》连载
  8. laravel会话控制和缓存操作
  9. cuda相关的dockerfile build时异常处理
  10. u盘格式化了怎么恢复数据?