我们的团队使用Eclipse Helios SR1。我们在Windows 7/2008上为Tomcat 6和Java 6开发。我们使用Java 6和Tomcat 6的最新版本保持最新版本。我们每年在Tomcat主机和所有开发人员工作站上更新JDK / JVM大约两次。
但我从未理解Eclipse如何跟上最新的JDK更新。我看到引用的JRE系统库都来自c:\ program files \ java \ jre6 \ lib,它随每个JDK更新而更新。所以被调用的库是最新的。但我认为Eclipse的编译器是Eclipse的内部编译器吗?
我猜想每次JDK更新都有一个新的javac.exe。但我们从不做任何事情来更新Eclipse的内部编译器。我们需要做些什么以及更新Eclipse的JDK更新吗?
由于
答案 0 :(得分:4)
Eclipse正在使用您配置的JDK来运行和调试代码。您可以在Window中配置/更改它 - >偏好 - > Java - >已安装的JRE。
从下面的 Kevin K 评论更新 - Eclipse不使用已安装的JRE / JDK进行编译,它使用内置的JDT增量编译器。它使用已安装的JRE / JDK进行运行和调试。并且,使用JDK,Java库的源代码附件
答案 1 :(得分:2)
您正在看到的引用的JRE系统库是JRE,其中(1)加载库以进行类路径解析,同时编译& (2)运行应用程序。为了编译java源代码,Eclipse不需要javac.exe或JDK,它使用自己的编译器JDT。因此,当您将JRE更新到其最新版本时,eclipse将自动拾取最新的库以编译您的源。要包含一个新的JRE,就像你已经知道的那样..转到窗口 - >偏好 - > Java - >已安装的JRE
答案 2 :(得分:2)
这取决于您如何安装Java。有两种模式,"家庭"和"静态" (见this article)。
如果您在" family"中安装Java模式,新版本将替换" jre6"中的现有版本。目录,因为它是相同的路径Eclipse不需要重新配置。
如果你在"静态"中安装Java模式,更新安装在不同的路径中(例如" jre1.6.0_27"),应该重新配置Eclipse以使用该JRE。
对于nitpick,配置的JRE不用于编译类(Eclipse有内置的增量编译器),但它用于运行和调试程序。
答案 3 :(得分:0)
我找到了最新的非常不寻常的工作方式。我们通常这样工作:
-vm
,表示将启动Eclipse的VM。如果它是JDK的一部分,eclipse会找到它并使用JDK作为标准VM来启动和编译程序。当我们为客户开发(我们总是为客户开发)时,采用最新的JDK(开发速度......)是合适的,但用于编译和运行应用程序的JDK是由客户定义的,其中一些甚至现在使用JDK 1.4。因此,如果你想引导eclipse应该使用哪个JDK,你应该明确地使用它(是的,你必须在每个开发人员的每次安装时都这样做。)