jenkins部署maven项目

薄洪涛5个月前JAVA2931

1. 环境配置

jenkins安装 Maven Integration plugin插件

配置maven,java等路径

2. 2.新建item,选择构建maven项目

a. 2.1 源码管理

填入git地址、所使用授权用户、分支

2.2 build配置
Root POM

pom.xml

Goals and options

clean package -DskipTests

2.3 Post Steps

勾选Run only if build succeeds

Add post-build step-exec shell,脚本内容如下

# Jenkins project name
PROJECT_NAME=nhis-service
# project main module
PROJECT_MAIN=nhis-web
# Jenkins build id
OLD_BUILD_ID=$BUILD_ID
# Manven project name
APP_NAME=nhis-service
# Base directotry in server
APP_BASE_DIR=/home/zrapi/$APP_NAME
echo "Build [$APP_NAME] successfully!"
cd $APP_BASE_DIR
cp $JENKINS_HOME/workspace/$PROJECT_NAME/$PROJECT_MAIN/target/$APP_NAME.jar ./
# 改变 Jenkins BUILD_ID防止脚本没执行完就被杀死
export BUILD_ID=dontKillMe
# 恢复Jenkins BUILD_ID
export BUILD_ID=$OLD_BUILD_ID

此时编译成功后,jar包会在/root/.jenkins/workspace/xxx/xxx 下

再次Add post-build step-exec shell,脚本内容如下

sudo systemctl restart 服务名称


标签: mavenjenkins

相关文章

接口熔断器resilience4j的使用

pom引入<!-- 熔断器 : https://mvnrepository.com/artifact/io.github.resilience4j/resilien...

Intellij IDEA实现热部署

Intellij IDEA实现热部署

每次修改代码都需要重新编译,然后重启Tomcat,比较麻烦,我们可以通过Jrebel实现项目的热部署,从而不需要重启Tomcat首先安装plugin如果在线安装时间比较长,可以选择自己下载包(点我自己...

springboot实现定时任务

springboot实现定时任务

之前做php的时候,如果想做个定时任务,或者想特定时间调用某个脚本/接口,我们都会考虑使用linux的crontab来实现,比较对于单线程脚本语言来说,做定时不是那么容易然后最近因为开始学习java,...

微信H5支付安卓提示"商家参数格式有误请联系商家解决"

微信H5支付安卓提示"商家参数格式有误请联系商家解决"

今天遇到一个恼火的问题,我们对接微信的H5支付,采用了前后端分离,后端接口返回了支付的url,ios正常唤起微信支付,android却始终提示商家参数格式有误请联系商家解决,如图按照微信提供的文档,我...

spring中什么情况下事务会失效?

事务失效的场景?权限问题,@Transactional 修饰的方法必须为public方法用final修饰或者是static方法,spring事务底层使用了aop,也就是通过jdk动态代理或者cglib...

redis缓存雪崩,缓存击穿,缓存穿透

redis缓存雪崩,缓存击穿,缓存穿透

缓存雪崩同一时间大量redis缓存数据失效,造成大量请求涌入数据库,数据库压力增大崩掉解决方案缓存过期时间加随机值增加过期表示,缓存过期后,自动更新缓存缓存穿透缓存和数据库中都没有的数据,每次查询都会...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。