【问题标题】:AEM/CQ - javax.xml.namespace can't resolve OSGI dependencyAEM/CQ - javax.xml.namespace 无法解析 OSGI 依赖项
【发布时间】:2017-11-06 07:16:31
【问题描述】:

我正在使用 AEM 6.2,目前正在实施 WebService。 我在外部创建的 OSGI 包中包含了所有依赖项 jar,并且所有依赖项问题都得到了解决,除了一个:

javax.xml.namespace,version=[1.0,2) -- 无法解析

当我使用 depfinder 工具签入 maven 时,它显示如下:

<dependency>
    <groupId>org.apache.sling</groupId>
    <artifactId>org.apache.sling.fragment.ws</artifactId>
    <version>1.0.2</version>
    <scope>provided</scope>
</dependency>

但是,在我的其他自定义项目中,javax.xml.namespace 显示已解决状态。

我被困在这种情况下,任何指针都将不胜感激。

谢谢, 珍妮特

【问题讨论】:

  • 检查其他捆绑包是否也具有特定于版本的导入。如果是,请尝试找出它的来源。
  • 感谢您的回复@11thdimension,显示已解决的另一个包如下:javax.xml.namespace,version=0.0.0.fragment_xml from org.apache.felix.framework (0)
  • 你能覆盖第二个包中的导入版本吗?
  • 我不知道该怎么做@11thdimension 你能指导我吗?谢谢,Jineet

标签: java maven osgi aem


【解决方案1】:

如果您仔细查看“包依赖”工具的输出,您会发现 Maven 依赖的版本为 1.0.2。另一方面,这个包的导出版本是0.0.0.fragment_xml

我不知道为什么会这样,但这意味着您需要使用一些解决方法来解决针对此版本的捆绑包。

你基本上要做的是更新你的MANIFEST.MF并将导入的版本从1.0.2更改为0.0.0.fragment_xml

我们正在使用 Maven 和 maven-bundle-plugin 插件来实现这一点:

<plugin>
    <groupId>org.apache.felix</groupId>
    <artifactId>maven-bundle-plugin</artifactId>
    <extensions>true</extensions>
    <configuration>
        <instructions>
            <Import-Package>
                javax.xml.namespace;version="0.0.0.fragment_xml",
                *
            </Import-Package>
        </instructions>
    </configuration>
</plugin>

我希望这会有所帮助。

【讨论】:

    【解决方案2】:

    maven Central 中有 58 个工件导出 javax.xml.namespace,版本匹配 [1.0,2)。一个安全的选择可能是来自 servicemix 的包装 javaxp-api:

    分级:

    'org.apache.servicemix.specs:org.apache.servicemix.specs.jaxp-api-1.4:2.8.0'

    马文:

    <dependency>
        <groupId>org.apache.servicemix.specs</groupId>
        <artifactId>org.apache.servicemix.specs.jaxp-api-1.4</artifactId>
        <version>2.8.0</version>
    </dependency>
    

    【讨论】:

    • 感谢您的回复。我添加了这个依赖,但它似乎没有任何区别。
    猜你喜欢
    • 2022-10-06
    • 2014-05-06
    • 2017-07-28
    • 2017-05-06
    • 2011-12-03
    • 1970-01-01
    • 2013-11-16
    • 2016-06-17
    • 2021-11-07
    相关资源
    最近更新 更多