2012-11-05 46 views
6

我想替换我的Eclipse插件依赖于我自己版本的这些类的rt.jar的一些类(javax.tools.*)。替换rt.jar中的类通常通过设置bootclasspath来完成。我的问题是如何在Eclipse插件中执行此操作。如何配置Eclipse插件的引导类路径?

我创建了这些类的版本的JAR文件,并把它添加到的MANIFEST.MFBundle-ClassPath属性,该属性bin.includesbuild.properties.classpath。我还将JAR文件的路径输入到Eclipse Application启动配置对话框的名为“Bootstrap entries:”的字段中,并将我的JAR移至“项目属性>构建路径”的“排序和导出”选项卡顶部。尽管如此,当我使用Eclipse Application启动配置运行Eclipse插件时,该插件使用rt.jar中的原始类而不是我的JAR文件中的类。

如何配置我的Eclipse插件,以便它首先在我的JAR文件中查找类,并且仅当在我的JAR文件中找不到该类时才咨询rt.jar

+0

您是否需要专门从您的插件重写实例化的rt.jar类,或者您是否希望覆盖整个应用程序? – sharakan

+0

目前,仅适用于单个插件,尽管在两种情况下都能很好地知道答案。 – reprogrammer

回答

6

我找到的解决方案是配置插件运行的JRE。

要查找插件运行的JRE,首先需要查找插件的执行环境。打开插件的MANIFEST.MF文件,找到Bundle-RequiredExecutionEnvironment属性设置为的执行环境,例如JavaSE-1.6

在Eclipse中,每个执行环境都映射到JRE安装。要找到您的执行环境设置为Preferences -> Java -> Installed JREs -> Execution Environments的JRE并单击插件使用的执行环境。

您需要配置运行插件的JRE。转到Preferences -> Java -> Installed JREs并选择插件使用的JRE。按Edit...按钮并将Default VM arguments设置为-Xbootclasspath/p:/path/to/your/jar.jar。最后,点击首选项窗口上的Finish按钮,然后点击OK按钮。

您可以在不同的地方设置VM参数,例如在Eclipse应用程序的启动配置对话框中。