我现在正在探索Spring Boot的可能性,而我正处于轻微的僵局。我希望能够在同一台服务器上同时运行两个Spring Boot应用程序,但是在不同的路径上(一个部署在/
上,另一个部署在/another-path
)。
因为这是在Spring Boot中运行的嵌入式Tomcat实例,所以没有可供我更改的配置文件。
有没有标准的方法来做到这一点?是可能吗?
答案 0 :(得分:21)
Spring Boot附带了一些预先构建的属性支持。如果您创建 application.properties 文件,则可以包含:
server.port=<another port>
server.address=<another IP address>
server.sessionTimeout=<another timeout setting>
server.contextPath=/your-other-path
这可以在与您的可运行JAR相邻的 application.properties 中,嵌入在JAR文件中,或者仅作为 -Dserver.contextPath = / your-alt-path 使用java命令。这些是级联的,这意味着您可以在JAR中嵌入一组默认值,使用本地 application.properties 文件覆盖,然后最后使用-D覆盖 application.properties 选项。
答案 1 :(得分:1)
因为它使用嵌入式tomcat,你应该能够为每个指定path的应用程序添加/META-INF/context.xml
(至少这应该适用于普通的tomcat)。
这适用于我们正常的嵌入式tomcat东西,所以我希望它也适用于Spring Boot。