从特定包中导入包也可以在另一个包中导入

时间:2017-07-28 05:44:42

标签: java maven osgi-bundle

有两个捆绑包(A和B)导出包a.b.c而B是第三方捆绑包。 A用作具有a.b.c导入的其他模块的依赖项。这些模块应该从bundle A而不是B中获取包。不使用<Export-Package>从B中排除abc包,可以提供一个解决方法来捆绑A以限制模块仅从自身引用包吗?

1 个答案:

答案 0 :(得分:0)

在使用已经有来自其他地方的a,b,c的A的模块中,将排除放在该pom的A依赖关系标记内。

所以,我对这些字母感到困惑,但是如果项目BOB使用依赖关系A但你不希望BOB从A中提取a,b和c,因为它已经从其他地方获得了, BOB的pom.xml,在您使用和排除的A标签内。

<exclusions>
    <exclusion>
      <groupId>sample.a</groupId> <!-- Exclude Project-a from Project-A -->
      <artifactId>Project-a</artifactId>
    </exclusion>
  </exclusions>

查看'Exclude Dependencies'

上的完整示例