<dependency>
<groupId>com.nimbusds</groupId>
<artifactId>nimbus-jose-jwt</artifactId>
<version>5.8</version>
</dependency>
<Embed-Dependency>
com.nimbusds.jose.*;scope=compile|runtime;inline=true,
com.nimbusds.jwt.*;scope=compile|runtime;inline=true,
</Embed-Dependency>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>
${project.artifactId}
</Bundle-SymbolicName>
<Private-Package>
</Private-Package>
<Import-Package>
</Import-Package>
<Export-Package>
</Export-Package>
<Embed-Dependency>
com.nimbusds.jose.*;scope=compile|runtime;inline=true,
com.nimbusds.jwt.*;scope=compile|runtime;inline=true,
</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>
</instructions>
</configuration>
</plugin>
试试看
<Embed-Dependency>*;scope=compile|runtime;inline=true;artifactId=nimbus-jose-jwt</Embed-Dependency>
或
<Embed-Dependency>nimbus-jose-jwt;scope=compile|runtime;inline=true</Embed-Dependency>
匹配表达式(至少是第一个)匹配工件ID,而不是包名。有关如何选择工件进行嵌入的更多信息,请参阅捆绑插件文档。
以前部署的JDOM的OSGi包究竟是如何解决这些相同的依赖关系的?它们从来没有在捆绑进口包中列出?此外,如果我试图将这些作为项目的依赖项包含并嵌入它们,只会加剧问题。救命啊!
如果我有一个OSGI Bundle jar中嵌套了依赖项jar,我是否需要在导入包清单中列出这些类以便使用它们?我不这么认为。 另外,我如何将这些依赖项jar添加到我的包中。我只是把它们放在根文件夹里吗?我是否需要向清单文件添加任何内容才能使用这些依赖关系?
问题内容: 我正在使用Intellij Java 2016.2.2和Maven创建一个非常简单的Java控制台应用程序。 我想添加一个外部库,所以我在Maven中添加了我的依赖项,如下所示: 当我在IDE中运行它时,它运行良好,但在外部控制台中却没有运行(我遇到以下错误: java.lang.NoClassDefFoundError )。 我检查了一下,由于某种原因,外部JAR未添加到我刚刚生成的
短版: 如何配置AEM/CQ5内容包的maven POM以便包嵌入相同OSGI包的不同版本? 我正在为AEM(CQ5)构建一个内容包。该内容包嵌入了项目所需的直接和间接osgi依赖项。 我有一个bundle(我们称之为BundleX)的问题,因为在特定版本的Google Guava上有一个未解决的包导入,所以在内容包部署后仍然未激活。Guava是我嵌入到项目中的osgi依赖项的一部分。问题是不同的
我们正在使用ApacheFelix(版本4.4.1)作为嵌入式OSGi框架。提供该框架的主要应用程序使用作为日志框架。存在对log4japi和log4jcore的依赖。当然,当主应用程序启动时,也会加载和配置Log4j2。主部件中触发的所有日志消息都正确写入已配置的Appender。 现在是重点。加载的所有bundle都应该能够使用与主应用程序相同的配置和日志上下文。我试图做的是提供所有Log4j
我对嵌入式Cassandra的Spring单元测试有意见。问题是嵌入式Cassandra和我的Cassandra服务器同时启动。如何确保在单元测试期间只启动嵌入式Cassandra。 我正在为Cassandra使用Spring数据。 我有以下Spring配置文件。 我的上下文文件 我的测试用例如下: }