azi*_*sal 21 tomcat maven jenkins spring-boot microservices
我有一个Spring Boot应用程序,它运行在嵌入式Tomcat servlet容器上mvn spring-boot:run
.而且我不想将项目作为单独的战争部署到独立的Tomcat.
每当我将代码推送到BitBucket/Github时,钩子就会运行并触发Jenkins作业(在Amazon EC2上运行)来部署应用程序.
Jenkins作业有一个后期构建操作:mvn spring-boot:run
问题是当构建操作完成后作业挂起.
应该有另一种方法来做到这一点.任何帮助,将不胜感激.
kry*_*ger 19
问题是Jenkins 不能很好地处理构建中的子进程.@Steve在评论(nohup
ing)中提出的解决方法并未改变我的行为,但一个简单的解决方法是使用unix命令安排应用程序的启动at
:
> echo "mvn spring-boot:run" | at now + 1 minutes
Run Code Online (Sandbox Code Playgroud)
这样Jenkins成功地完成了工作,没有超时.
如果您最终在.jar
文件中运行应用程序,请java -jar app.jar
注意如果.jar文件被覆盖则Boot会中断,您需要确保在复制工件之前停止应用程序.如果您正在使用ApplicationPidListener
,则可以通过添加此命令的执行来验证应用程序是否正在运行(如果是,则将其停止):
> test -f application.pid && xargs kill < application.pid || echo 'App was not running, nothing to stop'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
24294 次 |
最近记录: |