有没有一种标准的方法来自定义Spring Boot中的部署路径?

时间:2013-09-13 00:56:16

标签: java spring tomcat spring-boot

我现在正在探索Spring Boot的可能性,而我正处于轻微的僵局。我希望能够在同一台服务器上同时运行两个Spring Boot应用程序,但是在不同的路径上(一个部署在/上,另一个部署在/another-path)。

因为这是在Spring Boot中运行的嵌入式Tomcat实例,所以没有可供我更改的配置文件。

有没有标准的方法来做到这一点?是可能吗?

2 个答案:

答案 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。