【问题标题】:OSGI un used Import packages make as optionalOSGI 未使用 导入包作为可选
【发布时间】:2016-08-18 08:53:19
【问题描述】:

我正在尝试创建一个 aem 工作流 java 流程步骤,在我添加捆绑包构建后在 pom.xml 文件依赖项列表中添加以下依赖项很好,但它仅因为以下两个错误而处于已安装状态。

        <dependency>
        <groupId>com.day.cq.workflow</groupId>
        <artifactId>cq-workflow-api</artifactId>
        <version>5.6.2</version>
        <scope>provided</scope>
    </dependency>

我已经尝试添加依赖但仍然没有用,错误仍然存​​在

<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>2.8.3</version>
<scope>provided</scope>

而且我还试图将导入保持为可选仍然没有用

<Import-Package>net.sf.ehcache,net.spy.memcached,*;resolution:=optional</Import-Package>

错误信息:

【问题讨论】:

    标签: java osgi aem apache-felix felix-dependency-manager


    【解决方案1】:

    只需将构建时间依赖项添加到 ehcache 和 memcached 为 maven pom 中的&lt;optional&gt;true&lt;/optional&gt;。然后 bnd 会将导入创建为可选的,它应该可以工作。不需要有 Import-Package 元素。

    【讨论】:

    • 我以这种方式添加了&lt;dependency&gt; &lt;groupId&gt;net.sf.ehcache&lt;/groupId&gt; &lt;artifactId&gt;ehcache&lt;/artifactId&gt; &lt;version&gt;2.8.3&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;optional&gt;true&lt;/optional&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;net.spy&lt;/groupId&gt; &lt;artifactId&gt;spymemcached&lt;/artifactId&gt; &lt;version&gt;2.12.1&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;optional&gt;true&lt;/optional&gt; Bundle,处于安装状态,下面的错误消息显示为红色。 net.sf.ehcache,version=[2.8,3) -- 无法解析但不需要 net.spy.memcached -- 无法解析但不需要
    • 如果导入是可选的,请检查清单。如果它是可选的,那么包应该解析。
    猜你喜欢
    • 1970-01-01
    • 2015-11-07
    • 2016-09-15
    • 2017-04-07
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    相关资源
    最近更新 更多