我试图通过创建一个OSGi包来使用Jsoup库。我之前已经创建了这些包,所以我对这个过程非常熟悉。我还在pom.xml中添加了依赖项,如下所示:
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.7.3</version>
</dependency>
我也遵循此处给出的步骤:https://helpx.adobe.com/experience-manager/using/html-parser-service.html
我已尝试过所有内容,但依赖项仍未解决。附上截图。
我该怎么办?
提前致谢
答案 0 :(得分:0)
版本不匹配。您的捆绑包取决于包org.jsoup
和版本为1.7或更高版本的朋友。严格来说,它从1.7.0(含)版本导入到版本2.0.0(独家)。
但是,运行时安装的软件包将导出为0.0.0版。因此,导入与可用导出不匹配,并且您的捆绑无法解析。
您似乎需要找到一个导出为1.7版的org.jsoup
软件包,并将其安装到您的运行时而不是您在此处使用的软件包。
答案 1 :(得分:0)
有多种方法可以解决您的问题:
<Import-Package> org.jsoup.*;resolution:=required;version="[0.0,0.1)" </Import-Package>
<Export-Package> org.jsoup.*;version="1.7.2" </Export-Package>
详细信息:http://www.cqblueprints.com/tipsandtricks/build-and-deploy-osgi/deploy-third-party-libs.html
将另一个Jsoup JAR安装为OSGi包。
原来的Jsoup 1.7.2(http://mvnrepository.com/artifact/org.jsoup/jsoup/1.7.2)在我的项目中表现很好。
更新您的Maven&#34;依赖关系&#34;要导入的项目:
<dependency> <groupId>com.adobe.cq.jsoup</groupId> <artifactId>jsoupservice-bundle</artifactId> <version>1.0-SNAPSHOT</version> </dependency>