Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.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
如何在max OSX上将Java更新为7?_Java_Macos - Fatal编程技术网

如何在max OSX上将Java更新为7?

如何在max OSX上将Java更新为7?,java,macos,Java,Macos,我打字的时候 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) 然而,我下载了Java7。Java6和Java7之间的区别之一是,当我打开System Preferences(Ma

我打字的时候

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)

然而,我下载了Java7。Java6和Java7之间的区别之一是,当我打开System Preferences(Mac)时,我可以看到启动Java控制面板的图标。我可以看到Java控制面板,这意味着Java 7已经正确下载。那么,如何更改设置/配置,使其使用我下载的最新版本呢

您可以尝试发出以下命令:

update-alternatives –config java
该命令将使您能够在Java版本之间进行选择。这个命令对我有效
在基于Linux的机器上,所以我认为与Mac没有什么不同,但我不确定,您可以尝试一下。

Oracle Java 7和Apple Java 6完全不同,它们共存于同一台机器上,因为它们位于完全不同的位置

Java 7如果已安装,则位于:

/Library/“Internet插件”/JavaAppletPlugin.plugin/Contents/Home

Java 6如果已安装,则位于:

/System/Library/Frameworks/JavaVM.framework/Versions/A/

(更传统的Java6JDK位于:
/System/Library/Java/JavaVirtualMachines/1.6.0.JDK/Contents/Home

当您键入
java
时,您正在运行
/usr/bin/java
,这是指向Java6的符号链接。事实上,如果您键入
ls-l/usr/bin | grep-ijava
,您将看到一组典型JDK/JRE可执行文件的符号链接

因此,如果您已经安装了Java 7,并且希望从命令行使用它,那么您可以切换到它的目录,并在
bin
中运行它的特定二进制文件。为了避免这种情况,您可以将其
bin
目录添加到Bash搜索路径中,以便调用其内容,而不是
/usr/bin
中的Java 6符号链接。为此,更改
/etc/paths
以在第一行之前添加
bin
目录:

{ echo "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin"; \
  cat /etc/paths; } | sudo tee /etc/paths > /dev/null
然后设置JAVA_HOME环境变量,以便支持软件知道在哪里可以找到JAVA 7:

{ echo -n "export JAVA_HOME=";
echo "/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home"; } \
| sudo tee -a /etc/bashrc > /dev/null

现在,在任何新的终端窗口中,当您键入
java-version
时,您将看到
java版本“1.7.0\u 51”
。(如果您仍然希望能够运行Java 6二进制文件,可以使用
/usr/bin/Java
/usr/bin/javac
,等等)调用它们。

您正在mac上尝试这样做吗?如果是,你试过这个吗-?mac有环境变量吗?我想这应该对你有帮助:@BheshGurung:是的,我在用mac。我已经这样做了,它说我已经有了推荐的Java版本。@user3025403,那么更改Java版本的唯一方法就是设置/更改Java环境变量。如果你用谷歌搜索,你会找到足够的问题和答案。祝你好运<代码>更新替代方案特定于Debian软件包管理系统。OSX根本没有任何附带的软件包管理系统,所以这不起作用;现有的第三方软件(Homebrew、MacPorts、Fink)都没有使用这种机制。