【问题标题】:Freemarker : OSGI Bundle ExceptionFreemarker:OSGI 捆绑异常
【发布时间】:2013-04-30 15:32:52
【问题描述】:

我对 OSGI 很陌生。我正在尝试将一个新库 FreeMarker 添加到使用 Spring 3 的现有应用程序中。我们正在使用 Equinox。以下是我所做的更改,

在 pom.xml 中添加了 Freemarker 依赖,

    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>com.springsource.freemarker</artifactId>
        <version>2.3.18</version>
    </dependency>

我希望这个 jar 是 OSGI 投诉。

Import-Package 部分我添加了com.springsource.freemarker;version="2.3.18"

Bundle-ClassPath 我添加了lib/com.springsource.freemarker-2.3.18.jar

当我部署应用程序时,我收到以下错误,

org.osgi.framework.BundleException: The bundle could not be resolved. Reason: Missing Constraint: Import-Package: com.springsource.freemarker; version="2.3.18"

请告诉我缺少的配置。

提前致谢, 标清

【问题讨论】:

    标签: spring osgi freemarker equinox


    【解决方案1】:

    com.springsource.freemarker 包不会导出同名包。您正在将 Bundle-SymbolicName 与要导入的包名称混合。

    请参阅http://ebr.springsource.com/repository/app/bundle/version/detail?name=com.springsource.freemarker&version=2.3.18 的“导出包”部分,了解可以在另一个包中导入的内容。

    【讨论】:

    • +1 这听起来像是一个合理的解释。 Import-Package 应该基本上反映 Java 源代码中的聚合导入语句。因此,您不必手动维护它。你是用 Maven 捆绑插件构建的吗?那应该会自动生成Import-Package 标头。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-24
    • 2013-06-22
    • 2019-10-15
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    相关资源
    最近更新 更多