在OS X上运行Java 6有哪些选择?

时间:2008-12-01 18:44:59

标签: java macos

在OS X上运行Java 6有哪些选择?

我有一台运行Mac OS X 10.4的MacBook Pro Intel Core Duo。我是否有在此硬件和操作系统上运行Java 6的任何选项?

相关问题:哪些Mac(当前或即将推出)支持64位计算?是否有任何具有64位架构的Apple笔记本电脑(当前或即将推出)?

任何相关链接都将受到赞赏。

8 个答案:

答案 0 :(得分:6)

有人正致力于让OpenJDK 6在10.4上工作。我从来没有尝试过自己,soy latteBSD openjdk port的Mac Os端口看起来很有希望。 10.4版本似乎只有32位。

答案 1 :(得分:5)

由于Core 2 Duo所有可用的Intel mac都支持64位。如果您是早期采用者并且像我一样基于Core Duo的Intel mac(请注意缺少的2),那么您的计算机不具备64位功能(请参阅http://en.wikipedia.org/wiki/Core_duo)。

第一个Macbook(Pro)和Mac mini就是这样的例子。

然而,正如前面提到的SoyLatte(http://landonf.bikemonkey.org/static/soylatte/),在Mac上运行Java 6非常简单。我已经完成了安装步骤,我可以成功运行Java 6应用程序(例如Osmosis http://wiki.openstreetmap.org/index.php/Osmosis)。

Apple Java 1.6仅部署在支持64位的Mac上,即使你有Leopard,你的Core Duo Mac上也不会有Java 6。

答案 2 :(得分:4)

我认为目前所有的Mac都是64位的?

http://support.apple.com/downloads/Java_for_Mac_OS_X_10_5_Update_1支持Java 6。

答案 3 :(得分:4)

Leopard(OS X 10.5)是第一个通过更新使Java 6(1.6)JRE可用的OS X版本。不幸的是,只有64位版本的Java 6 JRE可用于Leopard,因此只有64位Intel处理器才能运行Java 1.6。

自Core 2 Duo以来,所有可用的Intel Mac都支持64位。如果您有基于Core Duo的Intel mac(请注意缺少的2),则您的计算机不具备64位功能。第一款Macbook(Pro)和第一台Mac mini就是其中的例子。你的特定计算机是32位的,所以你不会得到带有Leopard的Java 6,当然也没有Tiger(10.4)。

Snow Leopard(OS X 10.6)开箱即用Java 6。因此,如果您使用Snow Leopard购买新的Mac,或升级到Snow Leopard,它包括32位和64位版本的Java 6.如果您将32位Intel Mac升级到Snow Leopard,您将得到Java 6(32位)。

对于那些不希望升级到Snow Leopard或无法升级的英特尔Mac用户(Snow Leopard需要安装1 GB的RAM),您可以选择安装SoyLatte for Java 6。

SoyLatte(http://landonf.bikemonkey.org/static/soylatte/)派生自Java 6 JRE的FreeBSD端口,并在Mac上运行。 SoyLatte仅适用于基于Intel的Mac,仅包含32位JRE。

只需下载并解压缩SoyLatte,设置您的JAVA_HOME和PATH,然后运行您的程序。这是一个示例:

$ export JAVA_HOME=/Users/madams/Desktop/soylatte16-i386-1.0.3
$ export PATH=/Users/madams/Desktop/soylatte16-i386-1.0.3/bin:$PATH
$ java -jar /Users/madams/Desktop/test.jar

另外,请注意Snow Leopard仅包含Java 6,并自动删除旧的JRE。这意味着,不再是Java 1.5,尽管以前版本的路径链接到当前版本。

此外,Snow Leopard中的Java 6在64位Mac上默认为64位JRE,因此如果您调用32位本机库(JNI),它将失败。您必须使用-d32命令行选项调用java,以便在具有Snow Leopard的64位Mac上运行32位版本的Java JRE。

答案 4 :(得分:3)

Apple目前对Java 6的支持非常有限。根本不支持10.4,除了对10.5的支持仅限于64位。虽然这可能看起来并不可怕,因为所有新的Mac都有Core 2 Duo并且支持64位,但Safari仍然是32位应用程序,因此无法运行64位插件,例如Java applet容器。

答案 5 :(得分:3)

不幸的是,对于java 6,你唯一的选择是等到苹果发布它。

修改

顺便说一句,10.5:http://support.apple.com/kb/HT2733 :)

已经发生了
  

此版本将Java SE 6更新为版本1.6.0_07,将J2SE 5.0更新为版本1.5.0_16,将J2SE 1.4.2更新为1.4.2_18。

所以我想唯一的就是升级你的操作系统:(

答案 6 :(得分:0)

你的第一个问题已得到彻底解答。回答你的第二个问题:所有英特尔Mac都具有64位功能,并且随着每个OS X版本的发布,操作系统正变得越来越以64位为中心。 (与Windows不同,OS X无法区分为32位和64位版本。)

据我了解,下一个版本10.6几乎完全是64位。您可以了解很多有关64位和OS X here的信息。

特别是64-bit transition上的页面可能正是您所寻找的。

答案 7 :(得分:-1)

你可以。老实说,它也不是那么难(截至目前,它很容易)。 Java应用程序通常很突出(以一种糟糕的方式),我会高度考虑使用更多的本地语言进行部署。