我正在尝试在MacBook上开始使用Eclipse / Java / Scala。已安装的JDK为1.5。 Scala的SDT插件需要1.6,它包含在操作系统更新中,但我还手动安装了Apple的软件包以更新1.6。 问题是我无法从Eclipse运行任何东西。我总是收到以下错误:
An internal error occurred during: "Launching TestFooBasicTest".
Could not initialize class com.ibm.icu.impl.JavaTimeZone
我也尝试使用旧的1.5版本,但无济于事。
这里出了什么问题?
答案 0 :(得分:23)
我尝试使用Ubuntu 10.4和eclipse(Galileo 3.5.2)和java(java-6-openJdk)运行scala程序时遇到了同样的问题 - 当然还有从scala站点下载的scala插件。我通过手动更改/usr/lib/eclipse/plugins/com.ibm.icu_4.0.1.v20100125.jar来修复它,正如这个线程所建议的那样(顺便说一句,我发现Emacs可以更改一个jar文件:nice):
http://www.eclipse.org/forums/index.php?t=msg&goto=488654
它是由ubuntu openjdk包引起的,其中包含TimeZone配置的符号链接。论坛帖子的最佳解决方案是,
重新安装tzdata-java是我的修复:
sudo apt-get --reinstall install tzdata-java
答案 1 :(得分:0)
问题是:
An internal error occurred during: "Launching TestFooBasicTest". Could not initialize class com.ibm.icu.impl.JavaTimeZone
快速谷歌搜索显示此类属于IBM Globalization包ICU。 http://www-01.ibm.com/software/globalization/icu/index.jsp
猜测这是一个Scala内部使用的软件包,你没有正确安装,导致Scala启动失败。
答案 2 :(得分:0)
确保在运行配置(运行/运行配置)中设置java 1.6。
答案 3 :(得分:0)
你升级到Snow Leopard了吗?您使用的是Eclipse SWT / Carbon还是Eclipse SWT / Cocoa?升级到SL后,我发现Eclipse有些奇怪。从Eclipse SWT / Carbon切换到Eclipse SWT / Cocoa有帮助。还要恢复我的1.5 VM,SL安装以偷偷摸摸的方式删除(通过删除并留下指向1.6的符号链接),帮助我修复了具有本机的Java代码的几个问题(即usb-serial端口代码)。 p>
答案 4 :(得分:0)
检查Eclipse知道哪些JVM及其所在位置(首选项 - > Java - >已安装的JRE),并检查程序的运行/调试配置。默认情况下,Eclipse知道用于启动自身的JRE以及您手动添加的其他JRE。但是,如果升级某些组件并更改了JRE,Eclipse可能会对它们感到“困惑”。
答案 5 :(得分:0)
我在Windows上遇到了与Eclipse相同的问题。我尝试了许多不同的东西,包括在新工作区中的新的hello world程序。我终于通过将Eclipse指向另一个要执行的JRE来实现这一点。我知道Apple为Mac提供了JRE,但看起来这个问题似乎与Eclipse有关用于运行Eclipse本身的JRE有关。有关配置Eclipse执行的VM的信息,请参阅here。