【发布时间】:2021-08-26 08:45:57
【问题描述】:
我在我的 AEM 项目中添加了 Jsoup 依赖项。之后,当我在注入 MySlingModel 的 OSGI 服务类中使用 Jsoup 时,我收到错误“com.project.core.models.MySlingModel 无法解析为类型”。
【问题讨论】:
-
如果您的捆绑包无法启动(在 /system/console/bundles 下检查),或者无法注入所需的依赖项(然后将其设为 @Optional),则会出现此错误。我想,这是第一个。
-
你说得对,我的包已“安装”,但我不明白为什么。我检查了这个网站和谷歌,并没有找到可以解决我的问题的解决方案。我的包里有这个:
org.jsoup,version=[1.14,2) -- Cannot be resolvedorg.jsoup.nodes,version=[1.14,2) -- Cannot be resolved -
那么你还没有在你的包中嵌入jsoup。您刚刚添加了依赖项,现在 OSGi 容器无法解析该依赖项。如何将 JAR 嵌入到包中是非常高级的 maven 和 OSGi 东西。不幸的是,我们无法从这里帮助您。这在很大程度上取决于您当前的 maven-build 以及您使用的插件。请尝试从某人那里获得帮助,以扩展您的 pom.xml。
-
在帮助下,我指的是现场专家。即使是对您当前的 Maven 设置有经验的人也可能需要 30-60 分钟才能完成这项工作、对其进行测试等。
-
我刚刚查了一下。看来,jsoup 已经打包为 OSGi 包。所以你可以把它放到一个安装文件夹中,例如/apps/myproject/install 。你可以将它嵌入到一个包中。看这里的例子:github.com/alberndt/aem-app-integration/blob/…
标签: maven dependency-injection aem