我最近发现了非常有用的Eclipse Memory Analysis Tool,它可以快速找到Java应用程序中的内存泄漏。不幸的是,在将JDK切换到1.6(在Mac OS 10.5下)之后,JVM会在启动时立即终止。所有出现的都是一个对话框,说明“JVM已终止”,退出代码= -1。
其他人遇到过这个吗?也许有一种方法可以将其配置为使用不同的JDK? (例如1.5:显示它与之兼容)
答案 0 :(得分:3)
要将Eclipse配置为使用其他VM,请使用以下命令行:
eclipse -vm <path to java>
您还可以在Eclipse.app/Contents/Info.plist中指定路径。有一个这样的部分:
<!-- to use a specific Java version (instead of the platform's default) uncomment one of the following options:
<string>-vm</string><string>/System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/Commands/java</string>
<string>-vm</string><string>/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Commands/java</string>
-->
对于Memory Analyzer,您可以在MemoryAnalyzer.app/Contents下找到Info.plist文件。
答案 1 :(得分:1)
Mac的官方Java 6只有64位数据模型。不幸的是,Eclipse在Mac上使用Carbon,它只有32位。简而言之,使用官方Java 6发行版不可能运行Eclipse。
对此的经典解决方案是将默认VM设置为Java 5,然后选择Java 6作为Eclipse中的JRE / JDK。
如果你真的需要用Java 6运行Eclipse,那么你可以看看SoyLatte这是OpenJDK的一个版本,它支持32位和64位模式。