我在jar中有一个带注释的服务,它包含在一个webapp中。
该服务具有一些由@Value注释所使用的属性,该注释使用了placeolders。 property-placeholder是在webapp中定义的,而不是在jar中定义的。 我的问题是在运行时占位符没有得到解决。
这是一个例子。在JAR中:
@Service
public class MyService {
@Value("${property.myvalue}")
private myValue;
}
在WAR applicationContext:
中<context:property-placeholder location="classpath:myprops.properties"/>
当然,myprops.properties存在于war中并且已加载(我试图删除它并且我获得了一个未找到显式文件的错误)。
此外,传递了测试类路径中myprops.properties的单元测试。
是否存在类路径问题?