Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何配置Eclipse插件的引导类路径?_Java_Eclipse_Classpath_Bootclasspath - Fatal编程技术网

Java 如何配置Eclipse插件的引导类路径?

Java 如何配置Eclipse插件的引导类路径?,java,eclipse,classpath,bootclasspath,Java,Eclipse,Classpath,Bootclasspath,我想用我自己的类版本替换我的Eclipse插件所依赖的rt.jar的一些类(javax.tools.*)。通常通过设置bootclasspath来替换rt.jar中的类。我的问题是如何在Eclipse插件中做到这一点 我为这些类的版本创建了一个JAR文件,并将其添加到MANIFEST.MF的Bundle ClassPath属性、bin.includes属性和.ClassPath。我还将JAR文件的路径输入到Eclipse应用程序启动配置对话框中名为“Bootstrap entries:”的字段中

我想用我自己的类版本替换我的Eclipse插件所依赖的
rt.jar
的一些类(
javax.tools.*
)。通常通过设置bootclasspath来替换
rt.jar
中的类。我的问题是如何在Eclipse插件中做到这一点

我为这些类的版本创建了一个JAR文件,并将其添加到
MANIFEST.MF
Bundle ClassPath
属性、
bin.includes
属性和
.ClassPath
。我还将JAR文件的路径输入到Eclipse应用程序启动配置对话框中名为“Bootstrap entries:”的字段中,并将我的JAR移动到“项目属性>构建路径”的“订单和导出”选项卡的顶部。尽管如此,当我使用Eclipse应用程序启动配置运行Eclipse插件时,插件使用
rt.jar
中的原始类,而不是jar文件中的类


如何配置Eclipse插件,使其首先在JAR文件中查找类,只有在JAR文件中找不到类时才查阅
rt.JAR

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

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

在Eclipse中,每个执行环境都映射到一个JRE安装。要查找执行环境设置为的JRE,请转到
Preferences->Java->Installed JREs->execution Environments
,然后单击插件使用的执行环境

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


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

您是否需要专门为插件中的实例化重写rt.jar类,还是希望为整个应用程序重写?目前,仅针对单个插件,尽管知道这两种情况的答案会很好。