【发布时间】:2015-04-14 12:32:24
【问题描述】:
我有一个运行在嵌入式 Tomcat servlet 容器 mvn spring-boot:run 上的 Spring Boot 应用程序。而且我不想将该项目作为单独的战争部署到独立的 Tomcat。
每当我将代码推送到 BitBucket/Github 时,都会运行一个挂钩并触发 Jenkins 作业(在 Amazon EC2 上运行)以部署应用程序。
Jenkins 作业有一个后期构建操作:mvn spring-boot:run,问题是该作业在后期生成操作完成后挂起。
应该有另一种方法来做到这一点。任何帮助将不胜感激。
【问题讨论】:
-
如果这就是你运行的全部,那么它就会挂起。听起来您只需要使用
nohup将其作为后台进程运行即可。 -
为什么你通过 Maven 从源代码运行你的应用程序,而不是
java -jarring 打包的工件? -
@kryger 我会尽快更改运行方法。通过这种方式,应该删除旧进程(嵌入式 Tomcat 实例)以部署新进程。我应该以更优雅的方式来做。
-
嗨,阿齐兹。你是怎么解决你的问题的?你的问题的答案对我来说不够清楚。我有类似的情况,我在配置页面的构建部分下的“我的目标和选项”中使用“spring-boot:run”。应用程序已成功构建和部署,但作业并未停止。
-
@akcasoy 问题在接受的答案中得到了解释。如果您想了解实际问题是什么,可以查看here。
| at now + 1 minutes做到这一点。
标签: maven tomcat jenkins spring-boot microservices