是否可以从一个地方访问不同application.properties的环境变量。实际上我们正在构建这个软件,我们为不同的项目(如user-asset)提供了不同的application.properties。因此可以将所有环境变量放在一个外部位置。如果是,将如何访问?
答案 0 :(得分:1)
您将拥有一个application.properties文件,该文件定义的变量在您拥有的每种情况下都不会发生变化。
server.error.whitelabel.enabled=true #Just an example
然后,您可以拥有一个单独的application.properties,其名称不同,例如 application-active.properties 。此文件将添加到基本 application.properties 文件。
example.enviroment.variable=${I_AM_AN_ENVIROMENT_VARIABLE}
然后,您可以拥有一个具有相同属性名称的不同application.properties文件,在本例中为example.enviroment.variable
。
example.enviroment.variable=${I_AM_A_DIFFERENT_ENVIRONMENT_VARIABLE}
然后在您的代码中,您只需要根据当前配置文件获取example.enviroment.variable属性,它将获取正确的环境变量。
指定application.properites查看using profiles in spring-boot.
的内容答案 1 :(得分:0)
如果它是一个环境变量,那么我认为多个应用程序可以访问同一个变量。
但如果它在application.properties文件中,那么我认为它不可能。
不仅如此,如果你真的觉得一个应用程序需要访问另一个应用程序的application.properties,那么我认为这不是一个正确的方法。
相反,您应该将配置外部化(可能使用类似spring-cloud-config的配置服务器)并共享应用程序之间的公共属性。