我对Eclipse插件项目中的"maven-bundle- Plugin“有一个奇怪的问题。
当我编译这个项目时,我在Manifest.xml上的"Import-Package“部分看到许多java包为我的类路径中不存在的许多包导入,例如:
Import-Package:
COM.newmonics.PercClassLoader,
android.os,
bitronix.tm,
bitronix.tm.jndi,
bitronix.tm.resource.common,
bitronix.tm.resource.jdbc,
bitronix.tm.resource.jms,
bsh,
com.arjuna.ats.arjuna.common,
com.arjuna.ats.arjuna.recovery,
com.arjuna.ats.internal.jdbc,
com.arjuna.ats.internal.jta.recovery.arjunacore,
com.arjuna.ats.jbossatx.jta,所有这些包都不存在于我的项目或依赖项中,但是maven-bundle-plugin将其添加到Manifest中,我不知道为什么。有什么想法或建议吗?谢谢。
发布于 2019-11-15 19:07:40
捆绑包插件为您的项目引用的包生成Import-Package。这些是应该由其他包导出的包,以便您的包可以在运行时使用它们。我的第一个猜测是,您的类引用了这些包,因此请先检查源代码。
如果您的项目确实没有引用这些包,请检查您的pom.xml是否在插件配置中的<Import-Package>指令中指定了这些包。也许它是从另一个项目中复制/粘贴的?
也可能是您的包jar中嵌入了引用这些包的依赖项。为了找到答案,你可以解压你的jar (例如,使用rjar工具),并递归地grep类文件,比如bitronix/tm。
https://stackoverflow.com/questions/58860857
复制相似问题