java on Mac:解决无法打开jnlp文件的问题

环境与报错

操作系统:Mac OS X Version 10.7.5 (Lion)

测试文件:koala.jnlp (for EVO)

报错信息:

(1)双击打开:


(2)终端 javaws 命令打开:

No Java runtime present, requesting install.
Unable to locate a Java Runtime to invoke.

而你确实已经从 java.com 下载并安装了最新版本的 JRE (Java Runtime Environment),上述问题仍然出现。



双击打开 jnlp 文件的默认程序是 javaws (java web start.app) 。由于苹果认为 java 存在某些严重的安全问题(婆说婆理公说公理~),所以自 OS X 10.5 以上的更新中 (Apple Java 1.7) 都禁用了 WebStart 的功能。这就是产生上面问题的罪魁祸首。


解决办法:使用旧版本 - Apple Java 1.6 中的 javaws [1]

更新到 1.7 后,系统并未删除 1.6 的文件,所以可以将系统的 javaws 用软链接重新指向 1.6 的 javaws 即可。

打开终端:

[foo@Mac]$ which javaws
/usr/bin/javaws

[foo@Mac]$ ll /usr/bin/javaws
lrwxr-xr-x  1 root  wheel    76B Oct 22 22:40 /usr/bin/javaws -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaws

上面 javaws 所指向的正是 1.7 版本下的路径。要把它重新指向 1.6 版的:

sudo rm /usr/bin/javaws
sudo ln -s /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/javaws /usr/bin/javaws
再双击打开 koala.jnlp 文件,成功运行!

解决办法之二:终端上直接运行 Sun JRE 的 javaws 来打开 .jnlp 文件

/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/javaws  koala.jnlp

[1] 参考链接: http://blog.hani-ibrahim.de/en/java-webstart.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值