java命令行需要Mac上的JDK吗?

时间:2015-12-03 18:59:01

标签: java macos

我已从官方Oracle网站在MacOS X 10.10上安装了JRE 1.8。我安装的文件是jre-8u66-macosx-x64.dmg。令我惊讶的是,java命令说我需要JDK才能工作。

有没有办法在没有JDK的Mac上从命令行执行jar?如果没有,那么运行Java代码的选项是什么(除了浏览器applet)?

编辑:从命令行调用java -v时,我得到以下输出:

  

没有Java运行时,请求安装。

和一个警告窗口,上面写着:

  

使用" java"命令行工具,您需要安装JDK。

还有一个数据点:文件夹/ Library / Java / JavaVirtualMachines为空。相反,/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home下有这些东西。它甚至在/ bin /下有一个命令行java。使用-version运行它会显示:

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

我想知道我是否能以某种方式利用那个用于CLI ..

3 个答案:

答案 0 :(得分:3)

是的,命令行上的完整Java功能需要SDK。

SDK提供了一个Java安装,其中包含未包含在applet runner中的特定于操作系统的库。 我想一些Java应用程序和applet的子集可能从命令行运行正常,但applet插件提供了不同的服务。

这让我很烦恼多年,因为我一次又一次需要一个Java环境,但大多数时候我更喜欢在我的系统上找不到它。即使我安装了浏览器插件,它通常也会被禁用。

答案 1 :(得分:1)

如果重新安装无法解决问题,可以将$ JAVA_HOME设置为安装java的位置:

export JAVA_HOME=/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

之后, java -v应该有效,但您必须为每个新的终端窗口执行此操作,或者将其添加到.bash_profile或其他文件,具体取决于您使用的shell。

答案 2 :(得分:0)

收到此消息后,您已经安装了JDK或未安装JDK,通常是您所使用的应用程序需要SDK的早期版本。

enter image description here

来自Java.com上的此page

  

最常见的原因是应用程序需要Apple提供的旧版Java 6。有关此问题的解决方案,请参见http://support.apple.com/kb/DL1572

它重定向到Apple网站上的page,以下载并安装以前的版本。

enter image description here

enter image description here

enter image description here