【问题标题】:maven bundle plugin No translation found for macro:maven bundle plugin 找不到宏的翻译:
【发布时间】:2014-05-14 19:19:49
【问题描述】:

我为 bundle spring 项目使用了 maven bundle 插件。我在我的项目中使用 spring 属性占位符。当我构建我的项目时,我会收到以下警告:

[警告] Bundle groupId:artifactId:bundle:1.9-SNAPSHOT:找不到宏的翻译:spring.property

如何防止出现此警告消息?可能是一些 Maven 捆绑插件设置可以帮助我吗?

谢谢

【问题讨论】:

    标签: spring osgi maven-bundle-plugin


    【解决方案1】:

    在资源插件完成后,maven-bundle-plugin(在撰写本文时为 2.5.3 版)似乎有自己的资源过滤功能。如果资源插件无法替换属性,它将简单地保持原样。当然,如果该属性位于 Spring 上下文文件中以在运行时由 Spring 替换,那么这就是您想要的。但是剩下的属性会混淆 bundle 插件。

    我能找到的唯一解决方法是禁用 Spring 上下文文件的资源过滤。在你的 POM 的构建部分添加一些类似这样的内容:

    <resources>
        <!-- globally enable resource filtering -->
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
        <!-- then disable it for specific resources -->
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*-context.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
    

    您也可以反过来,将要过滤的文件显式包含在启用过滤和全局禁用过滤的资源声明中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-22
      • 2012-09-08
      • 2012-01-07
      • 1970-01-01
      • 2013-02-10
      • 2011-05-21
      • 2013-08-19
      • 2016-02-17
      相关资源
      最近更新 更多