2009-11-20 69 views
7

我想配置我的Eclipse环境以使用JDK而不是标准JRE。我这样做是因为我使用了m2eclipse,它需要JDK中的tools.jar来运行。以编程方式配置Eclipse安装的JRE

我在Windows 7 32-bit和JDK 1.6.0_16上运行Eclipse 3.5.1。

在我的系统上,我已将JDK安装到“C:\ Program Files \ Java \ jdk”(符号链接到最新安装)。

我添加-vm选项的eclipse.ini指向JDK

-vm 
C:/Program Files/Java/jdk/bin 

我已经证实,日食其实开始与所需的JVM。在配置细节

eclipse.vm=c:/Program Files/Java/jdk/bin\..\jre\bin\client\jvm.dll 

此外,在我的环境,

JAVA_HOME=c:\Program Files\Java\jdk 

然而,在窗口|首选项| Java |安装的JRE中,唯一列出的JRE是“C:\ Program Files \ Java \ jre6”中的一个。这个JRE最终成为Maven运行的一个,所以我的Maven构建失败了。

我知道我可以手动将已安装的JRE更改为指向JDK,而这正是我过去所做的。但是,我想找到一种方法来编写此更改,以便我可以自动安装开发环境。

此设置存储在哪里?自动配置Eclipse以将JDK用作唯一已安装的JRE的最佳方式是什么?

回答

5

的设置存储在

<workspace>\.metadata\.plugins\org.eclipse.core.runtime\.settings\org.eclipse.jdt.launching.prefs 

我会建议在首手动设置你的JDK/Java的/安装了JRE,以及首选项/的Java /安装了JRE /执行环境。

然后,只要你需要一个具有该确切配置的日食,只需复制这个文件与你的预设配置文件,并启动该日食。从配置文件

提取物:

org.eclipse.jdt.launching.PREF_DEFAULT_ENVIRONMENTS_XML= 
    <?xml version\="1.0" encoding\="UTF-8" standalone\="no"?> 
    <defaultEnvironments> 
     <defaultEnvironment environmentId\="JavaSE-1.6" 
          vmId\="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1255369536255"/> 
    </defaultEnvironments> 


eclipse.preferences.version=1 
org.eclipse.jdt.launching.PREF_VM_XML= 
    <?xml version\="1.0" encoding\="UTF-8" standalone\="no"?> 
     <vmSettings defaultVM\="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1255369536255"> 
      <vmType id\="org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType"> 
       <vm id\="1255369536255" 
        javadocURL\="http\://java.sun.com/javase/6/docs/api/" 
        name\="jdk1.6.0_16" path\="C\:\\Prog\\Java\\jdk1.6.0_16"> 
       <libraryLocations> 
        <libraryLocation jreJar\="C\:/Prog/Java/jdk1.6.0_16/jre/lib/resources.jar" 
            jreJavadoc\="http\://java.sun.com/javase/6/docs/api/" 
            jreSrc\="C\:/Prog/Java/jdk1.6.0_16/src.zip" 
            pkgRoot\=""/> 
+0

我认为这是可以拿到周围有,但你确定这是正确的文件吗?这是我的机器上的内容:'eclipse.preferences.version = 1' – 2009-11-20 23:27:05

+0

当没有明确声明JRE时,这可能是默认情况下的内容。但是如果我声明一个,那么这个文件确实包含多于'eclipse.preferences.version = 1' – VonC 2009-11-20 23:29:24

+0

感谢您的确认:) – 2009-11-20 23:34:28