Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.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版本差异的根源是什么:Java 6(在终端,Eclipse中)和Java 7(在Java控制面板中)?_Java_Eclipse_Macos_Eclipse Plugin - Fatal编程技术网

Java版本差异的根源是什么:Java 6(在终端,Eclipse中)和Java 7(在Java控制面板中)?

Java版本差异的根源是什么:Java 6(在终端,Eclipse中)和Java 7(在Java控制面板中)?,java,eclipse,macos,eclipse-plugin,Java,Eclipse,Macos,Eclipse Plugin,Eclipse抱怨说:JRE版本是1.6.0;运行Google插件for Eclipse需要1.7.0或更高版本 在终端中,java同意: > java -version java version "1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode) 但是

Eclipse抱怨说:
JRE版本是1.6.0;运行Google插件for Eclipse需要1.7.0或更高版本

在终端中,java同意:

> java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
但是在System Preferences\Java\中,Java控制面板显示
您的系统具有推荐的Java版本:Java 7 Update 51

并指向
/Library/internetplugins/JavaAppletPlugin.plugin/Contents/Home/bin/java

Eclipse首选项显示已安装的JRE位于: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

要将Eclipse指向Java 7(1.7.0),更改首选项就足够了:

Java版本中出现差异的原因是什么?这是命令行Mac和窗口Mac之间路径不同的例子吗

编辑

如果我通过添加

-vm
"/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java"
日食拒绝启动

但这实际上是1.7:

> "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java" -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

如果您想确定用于运行Eclipse的JVM,您需要在
Eclipse.ini
文件中指定它,根据。

安装此更新可能会解决您的问题:


我不关心Eclipse运行在什么JVM上,只关心(最近的)Google插件的运行,后者需要JRE 1.7。无论如何,正如我提到的,这个问题已经解决了。命令行和窗口化环境之间的差异源于什么?既然您希望使用需要特定JRE的插件,这难道不意味着您关心的是在什么JVM Eclipse中运行吗?另外,在Eclipse中更改“已安装的JRE”首选项不会影响用于运行Eclipse本身的JRE;这些首选项仅适用于从Eclipse运行的应用程序。要影响运行Eclipse本身的JVM,您必须在Eclipse外部执行此操作(例如,Eclipse.ini或OS path等)。我不知道为什么您会看到命令行和“窗口化”之间的区别。在我的Mac上,我只从桌面快捷方式启动Eclipse。但我确实知道OSX对JVM的管理非常混乱和混乱。让我们回溯一下。。在1.7下运行Eclipse本身是否足以知道Google插件也将在1.7下运行?是的。所有Eclipse插件都在Eclipse平台“容器”中运行,因此在同一个JVM上运行;查看对话框如何在
../Home
处停止,但完整路径是
../Home/bin/java
我尝试了所有变体。Home/bin/java和justhome。带引号(用于屏蔽空格)和反斜杠转义。