在我的pom.xml我有这样的:如何解决这些AWS导入?
<instructions>
<Embed-Transitive>true</Embed-Transitive>
<Export-Package>
com.amazonaws.HttpMethod,
com.amazonaws.services.s3.*
</Export-Package>
<Embed-Dependency>
gson,
aws-java-sdk,
jackson-core
</Embed-Dependency>
...
而且作为依赖我有这些:
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
<version>1.11.115</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-core</artifactId>
<version>1.11.115</version>
</dependency>
当我建立我的.jar与mvn clean install
并上传到AEM我看到这一点:
什么是红色所有这些“额外”的软件包,它解决不了,怎么能我解决这些问题?
在构建并向AEM上传程序包之前,如何防止发生这种情况?
我不熟悉AEM,但这些软件包都在核心库中。核心也有[一系列依赖关系](https://github.com/aws/aws-sdk-java/blob/master/aws-java-sdk-core/pom.xml)。因此,如果AEM要求您手动导出依赖关系,那么您的工作已经完成。 – stdunbar
你可以请你发布你的'Import-Package'语句吗?因为我猜它被设置为'*; resolution = optional'。这意味着,基本上Java代码中的每个'import'语句都将被添加到捆绑包'Import-Package'列表中。这有点奇怪,因为您会期望嵌入式jar能够解决这些“依赖关系”。但是这些'Import-Package'包只能通过其他'Export-Package'语句来满足。因此,如果这些“红色”软件包是嵌入式依赖项的一部分,您可以尝试执行' * Export-Package>'。 –
Jens