@PropertySource 和应用程序上下文名称

@PropertySource and Application context name

我有一个@Configuration class。 这个class,有一个@PropertySource。

我希望每个应用程序都有一个不同的属性。

示例:

@Configuration
@PropertySource("file:${my.properties-file}")
public class Config {
}

我想通过上下文名称为每个应用程序配置每个 属性。

我的应用服务器目录结构:

webapps/
     my-app-a.war
     my-app-b.war

两者(my-app-a.war 和 my-app-b.war)都是同一个 Web 应用程序,区别在于它们在不同的上下文中部署了两次。

因此,我需要配置这 2 个属性:

my.properties.my-app-a=/source/properties/a.properties
my.properties.my-app-b=/source/properties/b.properties

如何为 inject/consider 应用程序上下文名称创建自定义 属性 源解析器以加载属性文件?

您是否尝试使用 spring 配置文件? 或者使用 Maven,你可以将你的属性放在 pom 中,并根据配置文件构建你的 war 它们将被插入到属性文件中

我解决了为每个应用程序设置上下文配置的问题。

Apache Tomcat 8 Configuration Reference - Defining a context