我们当前的设置包含一个使用Ant处理的文件夹结构:
>
窗口:
Linux:
有没有一种方法可以使用Spring配置文件来使用Spring开箱即用的方式来做到这一点?
我将实现属性:
@Bean
@Primary
fun properties(context: AbstractApplicationContext?): PropertySourcesPlaceholderConfigurer {
val propertySourcesPlaceholderConfigurer = PropertySourcesPlaceholderConfigurer()
val yaml = YamlPropertiesFactoryBean()
val os = System.getProperty("os.name").replace(" ", "")
val resources = context?.environment?.activeProfiles
?.map { profile ->
ClassPathResource("$os-$profile-application.yml")
}?.plus(ClassPathResource("$os-base-application.yml"))
?.toTypedArray()?: emptyArray()
yaml.setResources(*resources)
propertySourcesPlaceholderConfigurer.setProperties(yaml.`object`!!)
return propertySourcesPlaceholderConfigurer
}
例如,在MacOS上,您将得到以下结果:
MacOSX-test-application.yml
MacOSX-base-application.yml
它在科特林,但我想你有这个主意!
我有2个URL,其中1个特定于Dev,另一个特定于Prod。我也在使用Spring profiling,其中我有一个单独的文件用于Dev和Prod application-Dev。性能和应用-prod。属性和我的应用。对于Dev env,属性文件如下所示 spring.profiles.active=dev 现在在我的java代码中,我想有一个属性,它将根据我使用的Spring配置文件绑定到适当的
这是我的代码,但我仍然无法纠正它。请在这方面帮助我。 这里的错误是:
我想根据活动的Spring配置文件有不同的Spring配置。如果我用--spring.profiles.active=blabla启动jar,我使用一个配置文件,如果start参数中没有配置文件,我使用另一个配置文件。现在我可以使用blabla配置文件,但是如果我在没有配置文件的情况下启动jar,它会同时使用两个配置文件。 默认配置: Blabla config: 现在: java-jar app
我正在应用程序中使用Microprofile配置(,而不是)。我有一个配置,它对不同的值采取不同的分支。为了测试()代码中的所有路径,我需要能够在运行时更改该值。有没有人可以提供一些如何做到这一点的建议?我的属性是使用系统属性设置的,但我对如何处理这一点持开放态度。
我有3个maven项目A、B、C。A是B的父项目,B是C的父项目。所有概要文件都在pom中定义。项目A的xml。 在项目C中,我试图根据所选概要文件在spring测试上下文中选择属性文件(在src/test/resources下)。对于回归测试,我们有两个属性文件: 本地应用程序测试。属性 在我们的Windows开发系统上,选定的配置文件将是“本地”的,相应地在服务器上也是如此。选择“本地”配置文
基于这篇文章,我运行我的Spring Boot应用程序 具有该配置文件的组件不运行。我尝试用根应用程序类中的以下代码来验证活动概要文件 日志消息输出为空。 少了什么?