SETUP
我有一个jar(比如它的A),它通过var ns =['Kyle', 'Mods',1,2,3];
console.log(ns);
添加另一个jar(比如它的B)作为它的依赖。 Jar A来自Spring Boot Application。
问题
我在jar B中的路径src / conf /下有属性文件。我试图在jar B中的一个java文件中设置@PropertySource的value属性中的路径值。当尝试这样做时,它引用了jar A的src / conf。我怎样才能实现这一点。
Maven
此处@PropertySource(
value = {
"file:${spring.profiles.path}other-services-dev.properties" })
从jar A
答案 0 :(得分:1)
使用“classpath:”而不是file:
。
将属性文件移动到src/main/resources
,使其成为jar B的资源。然后,您可以像这样引用文件:@PropertySource("classpath:/other-services-dev.properties")
。
更好的封装方法是在jar B中定义一个带有注释@PropertySource("classpath:/other-services-dev.properties")
的类,并通过getter公开属性。然后jar A可以简单地让这个类注入。
在罐子里B:
@PropertySource("classpath:/other-services-dev.properties")
@Service
class BProperties
@Value("${setting1}")
private String setting1;
public String getSetting1() {
return setting1;
}
}
在罐子里
@Service
class SomeService {
@Autowired
private BProperties properties;
}