Eclipse RCP类在不同包中的可见性

时间:2016-02-02 13:32:40

标签: java eclipse jar bundle rcp

让我们假设我们有两个Eclipse RCP项目A和B. A是包含JAR文件的包。 B中的MANIFEST.MF包含: “Require-Bundle: A”包含A,其中包含B内的所有JAR。

我想在A:Class.forName("somepackage.BClass")中使用,其中BClass是B中存在的类。

怎么做?

2 个答案:

答案 0 :(得分:2)

您的B捆绑包MANIFEST.MF必须包含Export-Package:语句,该语句列出捆绑包可用于其他捆绑包的每个包。

Export-Package: somepackage,
 anotherpackage,
 yetanotherpackage

在MANIFEST.MF编辑器中,您可以在“导出的包”部分的“运行时”选项卡上执行此操作。

答案 1 :(得分:1)

首先,您必须在 build.properties 文件中导入插件A中的* .jar,如:

bin.includes = plugin.xml,\
               META-INF/,\
               .,\
               lib/Some.jar

之后,您必须使用Eclipse的MANIFEST编辑器导出包。使用相应的编辑器打开MANIFEST.MF选择选项卡运行时

使用按钮添加将要导出的所有软件包添加到其他插件中,这些插件依赖于A.

Exported Packages