mountain

在Mountain Lion之前,Java被捆绑在OS X中。似乎在升级期间,我在计算机上安装的Java 6版本被删除了。
显然,在升级过程中卸载Java的原因是Java运行时存在的安全问题。通过这种方式,您不得不安装可解决此安全问题的最新版本。

所以我去了/ Applications / Utilities /打开一个终端并执行以下命令:
java -version ==>“没有Java运行时……”
出现一个提示您安装Java的窗口。单击“安装”并获取最新版本。我已经安装了它,但是就在我从Oracle下载并安装了JDK SE 7之后。

安装后,打开Java首选项(Launchapad / Others),您将看到:

现在我知道我有两个Java版本,但我正在使用哪个版本?

$ java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)

那么,如果我想使用Oracle的JDK SE 7怎么办?
然后,我只需将Java Preferences窗口中的Java SE 7拖到列表中的第一个位置。

这次 :

$ java -version
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b06)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)

我对自己说,让我们了解更多有关如何在OS X上安装Java的信息,因此我进行了更多研究。

有一些非常有用的命令: whereis和which和ls -l 。

whereis java ==> /usr/bin/java
ls -l /usr/bin/java ==> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

当我看到此消息时,我有点好奇,所以我列出了Versions目录:

cd /System/Library/Frameworks/JavaVM.framework/Versions
ls ==>
1.4 1.5 1.6 A CurrentJDK
1.4.2 1.5.0 1.6.0 Current

现在,为什么我的计算机上装有Java的旧版本? 所以我问了Ask Different
http://apple.stackexchange.com/questions/57986/multiple-java-versions-support-on-os-x-and-java-home-location

$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.8.1
BuildVersion: 12B19
$ ls -l /System/Library/Frameworks/JavaVM.framework/Versions
total 64
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.4 -> CurrentJDK
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.4.2 -> CurrentJDK
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.5 -> CurrentJDK
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.5.0 -> CurrentJDK
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.6 -> CurrentJDK
lrwxr-xr-x  1 root  wheel   10 Sep 16 15:55 1.6.0 -> CurrentJDK
drwxr-xr-x  7 root  wheel  238 Sep 16 16:08 A
lrwxr-xr-x  1 root  wheel    1 Sep 16 15:55 Current -> A
lrwxr-xr-x  1 root  wheel   59 Sep 16 15:55 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents

似乎所有旧版本都链接到AppleJ版本的CurrentJDK版本,但A和Current链接到AI除外,对此问题有所了解。对我来说A就像一个临时变量。 如果在Java首选项中将Apple A的Java 6设置在第一个位置,而将Oracle A的Java SE 7放在第一个位置,则将Apple的Java 6指向此版本。当前指向A。

/java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)
./java -version
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b06)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)

因此,这意味着在当前目录中,它将指向在Java首选项中找到的第一个Java版本。
一个非常有趣的事情是以下信息

lrwxr-xr-x  1 root  wheel   59 Sep 16 15:55 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents

这意味着来自Apple的Java实际上安装在这里:“ / System / Library / Java / JavaVirtualMachines / 1.6.0.jdk /”
Java SE 7呢? 我可以搜索文件系统来查看,但是找到了一种更简单的方法:

如果在Java Preferences中的第一个位置是Java SE 7 ==>

$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home

如果在Java Preferences中的第一个位置是Java SE 6(系统)==>

$ /usr/libexec/java_home
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

因此,Mountain Lion(OSX)上的Java更有可能安装在以下位置之一:

  • /系统/库/ Java / JavaVirtualMachines
  • /图书馆/ Java / JavaVirtualMachines
  • 〜/库/ Java / JavaVirtualMachines

/System/Library/Frameworks/JavaVM.framework/Versions呢?
似乎链接到所谓的“ Java桥 ”。这里似乎是OSX安装上Java的本机部分。

参考: Java Code Samples博客上的JCG合作伙伴 Cristian Chiovari提供了OS X Mountain Lion上Java的多个版本 。

翻译自: https://www.javacodegeeks.com/2012/09/multiple-versions-of-java-on-os-x.html

mountain

mountain_OS X Mountain Lion上的多个Java版本相关推荐

  1. OS X Mountain Lion上的多个Java版本

    在Mountain Lion之前,Java被捆绑在OS X中.似乎在升级期间,我在计算机上安装的Java 6版本被删除了. 显然,在升级过程中卸载Java的原因是Java运行时存在的安全问题.通过这种 ...

  2. Mac 上管理多个 java 版本

    java 版本管理工具 jEnv jEnv 可以用简单的命令切换 Java 版本,但无法安装任何版本的 Java,所以我们自己必须安装它们,将 jEnv 指向它们. Linux / OS X $ gi ...

  3. 无法在 Mountain Lion 上启动 visual Paradigm 软件安装程序

    运行最新Mac OS X 10.8 (Mountain Lion) 的用户可能会遇到无法挂载 visual Paradigm的软件安装程序映像的问题. 挂载 VP 的软件安装程序映像时发出警告 此问题 ...

  4. 一台机子上运行使用不同Java版本的多个tomcat

    方法 在tomcat/bin/下创建setenv.sh并写入 export JAVA_HOME=/usr/share/jvm/jdk1.8.0_91 When you starting tomcat  ...

  5. (转)OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程

    如果你是一名 Web 开发者,很多时候都需要在本地搭建服务器测试环境,比如 Apache+Mysql+PHP 这样的环境.事实上 Mac OS X 中想要搭建这样的环境很简单,本文我们就会将详细的教程 ...

  6. Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程

    如果你是一名 Web 开发者,很多时候都需要在本地搭建服务器测试环境,比如 Apache+Mysql+PHP 这样的环境.事实上 Mac OS X 中想要搭建这样的环境很简单,本文我们就会将详细的教程 ...

  7. [转]OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程

    OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程 [转][url]http://www.guomii.com/posts/30136[/url] 如果你是一名 ...

  8. 如何制作Mountain Lion系统镜像

    方法呢,和制作Lion的安装U盘方式完全一样,只不过把系统文件换成Mountain Lion的了. 首先,我们需要下载OS X 10.8美洲狮的安装文件 ,方式有二: 其一:从Mac App Stor ...

  9. 如何查看java版本 ubuntu_在Ubuntu上验证JAVA安装并检查已安装的版本(如果有)

    Ubuntu中的某些应用程序要求在系统上安装Java Runtime Library.大多数Ubuntu版本默认情况下都不提供此功能,因为在您的系统上安装Java时,安全性是一个问题.一次又一次,常规 ...

最新文章

  1. JFreeChart入门
  2. 不要使用Android Studio的Git Commit了----记一次debug
  3. oracle ora-00026,oracle错误代码
  4. 函授本科统考计算机考试时间,函授2006级计算机、机电本科第一学期考试时间安排.doc...
  5. 深度学习之卷积神经网络 ResNet
  6. PLSQL_性能优化系列15_Oracle Explain Plan解析计划解读
  7. python-matplotlib学习(1)
  8. 1024x1024 分辨率,效果惊人!InsetGAN:全身图像生成 (CVPR 2022)
  9. 如何使用计算机管理来为硬盘分区,电脑如何硬盘分区合理_电脑硬盘分区的基本步骤-win7之家...
  10. (jdbc和cmd)sqlite数据迁入mysql(导入导出)
  11. Docker从理论到实践(二)------配置Docker镜像源加速器(部分使用效果已不太理想)
  12. 联想拯救者Y7000 win10+ubuntu18.04双系统 nvidia1050ti驱动安装
  13. hot-S22和X参数的原理(转)
  14. tomcat Failed creating java C:\Program Files\Java\jre6\bin\client\jvm.dll %1 不是有效的 Win32 应用程序。...
  15. VMware虚拟机win7系统无法上网怎么办
  16. [渝粤教育] 天水师范学院 陶质文物保护修复 参考 资料
  17. 【SSL1607】没有上司的晚会【树形DP】
  18. ubuntu20.04安装cuda库
  19. 不同版本的VS项目复制出现“PDB 格式不兼容;请删除并重新生成”的问题解决方法
  20. ajax 获取数据

热门文章

  1. 漫画:什么是ConcurrentHashMap
  2. 小二,先来两桂花豆沙包!
  3. mybatis和spring整合时这个报错,应该这样解决!
  4. ssh(Spring+Spring mvc+hibernate)——Dept.hbm.xml
  5. SpringAOP的SchemaBase方式
  6. python binascii array('c')_详解Python中的array数组模块相关使用
  7. php 编写线程教程,php 实现多线程
  8. linux打开服务iis,如何在Linux中引导时列出启动服务?
  9. mybatis_user_guide(6) Java API
  10. 普罗米修斯使用es数据库_用普罗米修斯和格拉法纳仪法来豪猪