2

<dependencies>标签中提到的捆绑包和标签之间有什么关系<Import-Package>吗?我的意思是如果我们不定义依赖项,那么 maven-bundle-plugin 无法在<Import-Package>标签中找到包?

4

2 回答 2

4

Maven 使用依赖项部分中列出的 jars 来创建类路径。bnd(maven bundle插件中的引擎)使用这个类路径通过字节码分析来分析你的代码所指的内容。

 maven dependency -> classpath -> bnd analysis -> import statements
于 2012-09-17T07:07:15.067 回答
2

Import-Package用于细化 maven bundle 插件自动为您生成的包导入列表。例如,您可以声明一些可选的导入,或者为只能通过反射访问的类添加导入。在大多数情况下,根本不需要指定任何内容,Import-Package因为默认值是*- 也就是说,将导入字节码中引用的任何外部包。

dependencies部分提供了编译器用来生成字节码的包池,以及用于改进包导入的 bnd(这是包插件的底层内容)。例如,它将根据依赖项列表(或传递依赖项)中提供包中的导出版本添加版本范围。

于 2012-09-16T23:55:45.947 回答