str*_*str 13 java eclipse scala java-7
我正在使用Eclipse(Indigo SR2)开发Scala项目.今天我将我的机器更新为Mountain Lion,因为我们需要JDK 7的一些功能.安装JDK 7工作正常:
$ java -version
java version "1.7.0_13"
Java(TM) SE Runtime Environment (build 1.7.0_13-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
Run Code Online (Sandbox Code Playgroud)
在Eclipse中,我更改了以下设置:
/Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home
JDK1.7.0
然后我重新启动Eclipse并尝试运行脚本.但是,我总是得到错误:
value getPlatformMXBean is not a member of object java.lang.management.ManagementFactory
Run Code Online (Sandbox Code Playgroud)
所述方法仅在Java 1.7中可用,并且Eclipse似乎没有找到它,尽管命令单击它会显示该类中的函数ManagementFactory
.关于Eclipse => Configuration显示它仍在使用JDK 6(java.runtime.version=1.6.0_37-b06-434-11M3909
),但我需要JDK 7.
所以我尝试了以下(也在StackOverflow和其他网站上描述):
-vm /Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home/bin/java
到eclipse.ini文件(根据eclipse网站双重检查路径,文件中的正确位置,并在其间添加换行符)$ /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse -vm /Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home/
但没有运气,Eclipse始终只使用JDK-6.奇怪的是,我可以明确地将JRE更改Run=>Run Configurations
为JDK7,它将以这种方式运行.但我不想为每个可运行的文件更改它.
还有什么建议?
感谢EECOLOR的提示,我能够在Eclipse Juno中使用Scala插件,JDK7运行得很好.但是,现在我遇到了似乎是一个依赖问题.我得到的例外情况可以在这里看到:https://gist.github.com/anonymous/ac0f3a3655419e5149fa
扼杀,当我从一个简单的命令行运行它时,文件才刚刚开始java -cp JARFILE com.AND-SO-ON.file
.为了构建源代码并获取依赖项,我们使用SBT.
我的Eclipse.ini看起来如下(默认除了Xmx):
-startup
../../../plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.200.v20120522-1813
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:MaxPermSize=256m
-Xms40m
-Xmx1060m
-Xdock:icon=../Resources/Eclipse.icns
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
Run Code Online (Sandbox Code Playgroud)
相同的项目(即真正相同的项目,而不仅仅是相同的代码)在Eclipse Indigo中运行时没有依赖性问题.编辑:刚刚发现,这个异常是由JDK7引起的,而不是使用的Eclipse版本.
与此同时,我设法解决了这些问题。
第一次尝试:
sbt eclipse
哎呀,不起作用!我仍然得到这个异常:
value getPlatformMXBean is not a member of object java.lang.management.ManagementFactory
Run Code Online (Sandbox Code Playgroud)
...这很奇怪,因为 Eclipse 现在确实运行在 JDK7 上。没有深入挖掘,我只是尝试了一下 Eclipse Juno。
第二次尝试:
结论:
所以我不知道为什么,但 Eclipse Indigo 不知何故不喜欢getPlatformMXBean
. 这似乎不是 JDK 的问题,而是 Eclipse 本身的问题。
归档时间: |
|
查看次数: |
2539 次 |
最近记录: |