如何在Mac OS X上面指定Eclipse启动时用指定的某一版本JDK

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Mac OS X上面指定Eclipse启动时用指定的某一版本JDK相关的知识,希望对你有一定的参考价值。

  具体方法如下:
  1、编辑 $ECLIPSE_HOME/Eclipse.app/Contents/MacOS/eclipse.ini 文件,在 Finder 中右键或者Ctrl+点击 Eclipse 应用程序,然后点击“显示包内容”,进入目录 Contents/MacOS/ 即可找到
  2、通过 ls -ltr /Library/Java/JavaVirtualMachines/ 列出已经安装好的各个 JDK 版本的路径,然后在 eclipse.ini 文件中指定之,比如:
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java
系统默认则是:
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
  3、同时,可以先通过执行 /usr/libexec/java_home -V 可以查看所有的 JAVA_HOME 指向哪,比如:
Matching Java Virtual Machines (5):
1.8.0_25, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
1.8.0_20, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
1.7.0_71, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
1.6.0_65-b14-466.1, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-466.1, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
 /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
 ls -ltr /usr/libexec/java_home 显示文件信息
参考技术A $ECLIPSE_HOME/Eclipse.app/Contents/MacOS/eclipse.ini 文件,在 Finder 中右键或者Ctrl+点击 Eclipse 应用程序,然后点击“显示包内容”,进入目录 Contents/MacOS/ 即可找到
通过 ls -ltr /Library/Java/JavaVirtualMachines/ 列出已经安装好的各个 JDK 版本的路径,然后在 eclipse.ini 文件中指定之,比如:
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin/java

系统默认则是
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

同时,可以先通过执行 /usr/libexec/java_home -V 可以查看所有的 JAVA_HOME 指向哪,比如:
Matching Java Virtual Machines (5):
1.8.0_25, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
1.8.0_20, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
1.7.0_71, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
1.6.0_65-b14-466.1, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-466.1, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

ls -ltr /usr/libexec/java_home 显示文件信息本回答被提问者和网友采纳

如何在 Mac OS X 上使用 C++ 播放声音?

【中文标题】如何在 Mac OS X 上使用 C++ 播放声音?【英文标题】:How do I play sounds with C++ on Mac OS X? 【发布时间】:2012-05-24 15:12:11 【问题描述】:

我正在更新一个 20 年前编写的 C++ 程序,以运行涉及精确启动和停止声音的科学实验。程序还需要能够控制播放音量、暂停声音或在指定位置开始声音、循环声音指定次数以及控制通道映射。

研究人员希望在现代 Mac OS X 上运行该程序,但我之前从未在 Mac 上进行过任何开发。在 Mac 上用 C++ 实现上述目标的最简单方法是什么?

CoreAudio 似乎太复杂了。 NSSound 似乎拥有我想要的所有功能,但据我所知,它仅在 Objective-C 中可用?是否可以将 Objective-C 与 C++ 混合使用?或者我应该考虑使用QuickTime SDK?

感谢您的帮助。

【问题讨论】:

【参考方案1】:

是的,您可以混合使用 Objective-C 和 C++。这是一种名为Objective-C++ 的混合语言。如果NSSound 拥有您需要的所有功能,那就去吧;如果没有,CoreAudio 就是要走的路。设置和集成更大的库(如 QuickTime、OpenAL 或 FMOD)将更具挑战性。

【讨论】:

【参考方案2】:

是的,您可以混合使用 Objective-C 和 C++。 Objective-C 只是添加了一些东西的 C,同样的东西可以放在 C++ 之上而不是得到 Objective-C++(特别是 Objective-C++ 没有 Objective-C 中的 C 特性,但不是 C++ )。

如果您需要非常低的延迟,直接使用 CoreAudio 可能会很有用。

另一个选项可能是 OpenAL,它仅作为另一个内置框架 OpenAL.framework 提供。

【讨论】:

以上是关于如何在Mac OS X上面指定Eclipse启动时用指定的某一版本JDK的主要内容,如果未能解决你的问题,请参考以下文章

如何在Mac OS X上面指定Eclipse启动时用指定的某一版本JDK

安装 Mac OS X Yosemite (Mac OS 10.10) 后 Eclipse 无法启动

mac os x10.11.2系统eclipse无法读取环境变量的问题

如何在 Mac OS X 上使用 C++ 播放声音?

如何使用mac os X在eclipse中运行现有的maven项目

如何从 Mac OS X 中完全删除 Eclipse(包括设置和插件)?