六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 56|回复: 0

Identifying Java on Mac OS X Technical Note TN2110

[复制链接]

升级  52%

32

主题

32

主题

32

主题

秀才

Rank: 2

积分
128
 楼主| 发表于 2013-1-15 03:00:37 | 显示全部楼层 |阅读模式
http://developer.apple.com/technotes/tn2002/tn2110.html

自己翻译了2段:

虽然Apple尽了最大努力使它的J2SE完全同步于Sun的发布,但是Apple有自己的发布计划,而且也没有必要发布每一个Sun的J2SE。例如,MacOSX的J2SE 1.4.2的第一版是基于JDK 1.4.2_03的。有可能在Sun发布一个小版本(比如:1.4.2_04)之前,Apple发布了一个Java 1.4.2 Update用来修复Java在MacOSX上的一些问题。这样的话,就可能同事存在2个MacOSX J2SE 1.4.2_03的发布版本,所以,简单的检查System property的 java.version是不足以判断你的程序是运行在哪一个Apple发布版本上的。

  

这和开发者有什么关系呢?如果Java在MacOSX上有问题影响到了你的程序,有可能有2种解决方法:

1, 你的程序告诉用户用户升级他们的Java到一个你知道此问题已经解决的版本。

2, 如果第一点不行,那就在有问题的版本上避免这个问题。

  

有很多办法来判断你的程序运行在哪个Apple J2SE版本上,不过推荐的方法是分析System property的java.runtime.version。Apple在这个值的最后加上了特殊的发布号(与J2SE发布版本号无关),可以用来识别你使用的Apple版本。下面是一个例子:

。。。。。。。。。

Mrj.version

另外一个有同样作用的System property值是由Apple提供的mrj.version,然而它是一个遗留的值,可以追溯到Classic Mac OS,并且在以后的发布中不保证确定的格式。所以推荐是用os.name和java.runtime.version来进行判断。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表