Maven 捆绑插件:osgi.ee=未知
Maven-bundle-plugin: osgi.ee=UNKNOWN
当使用 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 要求。
您需要基于 Bnd 4.0 的更新版本的 maven-bundle-plugin,它增加了对 Java 10 class 个文件的支持。
当使用 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 要求。
您需要基于 Bnd 4.0 的更新版本的 maven-bundle-plugin,它增加了对 Java 10 class 个文件的支持。