【发布时间】:2016-10-29 09:03:51
【问题描述】:
我们正在开发 Spring Boot 应用程序。我们的应用程序运行三个服务器(jvm)。假设这三个是:服务器,工人和myui。这三个以相同的服务器顺序运行 -> worker -> myui。出三两运行tomcat服务器。
我的问题是,如果运行第一台服务器,那么 Tomcat 会默认获取 8080 端口,这对我来说没问题。但是当我们运行myui时,这也启动了Tomcat,但是它抛出了“Address Already Bind”异常,因为8080已经被服务器消费了。
构建有三种类型的jar:
我的应用程序
配置
- application.properties
- application.yml
server.jar
worker.jar
myui.jar
这些 jar 中的每一个都可能具有与 config 文件夹中相同的文件。但是它们将被嵌入到 jar 中并且它们不会被配置。在我的构建中,将允许用户更新 application.properties 和 application.yml。
我们尝试在 application.properties 中将“server.port”外部提供为 8090。它在 IDE 中运行良好。但它不适用于构建,因为在构建中“/config/application.properties”的优先级超过了保存在 jar 中(如果有的话)并且它抛出地址已经绑定异常。
如何在“/config/application.properties”中配置它,以便可以将其配置为更改为运行 myui。如何将这些端口值从外部属性访问到我的资源 java 类中?
【问题讨论】:
-
是否要始终指定端口?
标签: java tomcat spring-boot maven-3