gpt4 book ai didi

eclipse - 为什么 MANIFEST.MF 看不到来自 Maven 的 pom 的包?

转载 作者:行者123 更新时间:2023-12-05 05:28:08 26 4
gpt4 key购买 nike

所以我的 POM 中有这样的东西:

<dependency>
<!-- jsoup HTML parser library @ http://jsoup.org/ -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.7.1</version>
</dependency>

它从某处的 maven 存储库中获取 jsoup-1.7.1.jar 并将其放置在我的 Maven Dependencies 文件夹中。

现在我可以在我的代码中使用它(Eclipse 不会提示),但是当我尝试在我的 MANIFEST.MF 文件中添加对它的依赖时:

Import-Package: org.osgi.framework, org.jsoup, org.jsoup.nodes

Eclipse 不断提示:

No available bundle exports package 'org.jsoup.nodes'
No available bundle exports package 'org.jsoup'

有人可以向我解释为什么会这样吗? (我很好奇确定 MANIFEST.MF 看到的内容的过程)

最佳答案

当您使用 eclipse PDE 时,您必须创建一个包含所有必需包的目标平台。正常的依赖解析没有和目标平台耦合。因此,您必须将每个依赖项添加到 maven pom 和目标平台。

顺便说一句。如果您正在处理基于服务器的 OSGi 项目,最好不要使用 PDE。您还可以使用 Maven 捆绑插件创建 bundle 。它会分析您所做的导入并自动创建 list 。在大多数情况下,这比 PDE list 第一种方式要好得多,而且它与 maven 一起工作得更好。

参见:http://www.liquid-reality.de/display/liquid/2011/02/15/Karaf+Tutorial+Part+1+-+Installation+and+First+application

关于eclipse - 为什么 MANIFEST.MF 看不到来自 Maven 的 pom 的包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728801/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com