【发布时间】:2012-05-25 05:32:41
【问题描述】:
我有一个带有多个捆绑包的 osgi 应用程序(在 felix 中)。一个包中有一些通用的属性文件,其余的包只需要使用它们即可。
我们使用 maven 和 spring osgi,属性文件位于以下资源中:
<path to bundle>/src/main/resources/
common.properties
engine.properties
...
Maven 通常在 bundle jar 中构建它们,因此它们应该位于应用程序类路径中,但 Spring 无法访问它们,这会失败:
<context:property-placeholder location="classpath:common.properties" />
(尝试过 classpath*: 和其他组合)
这真的是 osgi 意识形态的一些全球性问题,并且没有标准的方法让它发挥作用吗?只有像that 或<osgix:cmProperties...> 这样的黑客和变通方法?
之所以担心,是因为它使部署变得更加困难且容易出错:您不能像在普通应用程序中那样仅使用 mvn deploy 在 jar 中部署属性文件 - 您必须在每次发布时手动将它们复制到生产箱.
【问题讨论】:
标签: java spring classpath osgi properties-file