【问题标题】:Maven-bundle-plugin: osgi.ee=UNKNOWNMaven 捆绑插件:osgi.ee=UNKNOWN
【发布时间】:2018-12-10 19:17:32
【问题描述】:

使用 JDK 10 构建我的 OSGi 包时,maven-bundle-plugin (3.5.1) 会生成以下清单属性:

Require-Capability: osgi.ee;filter:="(osgi.ee=UNKNOWN)"

运行时失败:

Unresolved requirements: [[com.mycompany.mybundle [1](R 1.0)] osgi.ee; (osgi.ee=UNKNOWN)]

使用 JDK 9 构建时,我得到了预期:

Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=9.0))"

我将 maven-compiler-plugin 的源版本和目标版本分别设置为“1.9”和“10”。

目前,我正在使用一种解决方法来阻止插件将osgi.ee 添加到清单中:

<configuration>
  <instructions>
      <_noee>true</_noee>
  </instructions>
</configuration>

.. 但我宁愿有正确的 Java 10 要求。

【问题讨论】:

    标签: maven osgi java-10 bnd maven-bundle-plugin


    【解决方案1】:

    您需要基于 Bnd 4.0 的更新版本的 maven-bundle-plugin,它增加了对 Java 10 类文件的支持。

    【讨论】:

    • 事实证明,截至今天可用的最新版本的 maven-bundle-plugin 是 3.5.1,它仅基于 Bnd 3.5。所以你需要让 maven-bundle-plugin 开发人员更新。或者您可以从 Bnd 团队迁移到 bnd-maven-plugin。但请注意,它的配置和操作方式是否与 maven-bundle-plugin 不同。
    • 谢谢,我创建了issues.apache.org/jira/browse/FELIX-5879 来跟进 Felix 团队。
    猜你喜欢
    • 2023-03-16
    • 2017-09-07
    • 1970-01-01
    • 1970-01-01
    • 2015-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-08
    相关资源
    最近更新 更多