摆脱无法转换为String的org.eclipse.osgi.internal.framework.EquinoxConfiguration $ 1

时间:2014-10-09 13:23:22

标签: java eclipse ant ivy ivyde

我在执行Ant任务java.lang.ClassCastException: org.eclipse.osgi.internal.framework.EquinoxConfiguration$1 cannot be cast to java.lang.String

时遇到了Apache常春藤错误ivy:configlink

今天早上我尝试将LibraryFolder ClasspathContainer插件安装到Eclipse(STS 3.6.1)中:每次尝试执行ivy:retrieve时,安装它都会导致上述错误。

更糟糕的是,我尝试从Eclipse Marketplace安装IvyDE插件,Eclipse开始崩溃,导致多种错误,包括JVM崩溃。卸载这两个插件并没有解决。我尝试了一个新的工作区和一个空白的Eclipse安装,但最终我不得不安装我以前的Eclipse插件。

我花了整个上午试图修复这个烂摊子,但我不得不恢复以前未提交的工作区和Eclipse安装,所以现在除了上面的错误之外我还能正常工作。常春藤一直工作到今天早上。

我的每个Ant任务都在与Eclipse相同的JRE中运行(根据C:\Program Files\Java\jdk1.7.0_60\jre\bin\server\jvm.dll sts.ini),因为我使用了很多eclipse.refreshLocal任务。虽然我可以通过删除/评论eclipse.refreshLocal任务在标准JRE中运行Ant-Ivy任务来解决问题,但我在询问是否有解决方法来摆脱错误,可能是删除工作区元数据中的密钥文件。

正如我所读到的,一个Ivy方法被传递一个对象,从它的名字猜测,它是Eclipse配置的一部分。虽然我正在等待修正错误,但我的问题是如何进一步调查此org.eclipse.osgi.internal.framework.EquinoxConfiguration$1参数的性质?

1 个答案:

答案 0 :(得分:3)

这看起来与Error at building model of new Gradle project for libgdx相关 - 其​​中包含适用于Gradle IDE的变通方法,因此它可能适合您。

相关的Eclipse错误是https://bugs.eclipse.org/bugs/show_bug.cgi?id=445122

[通过OP编辑]以简化具有相同问题的人的生活我会发布链接的内容并接受答案

只需将以下行添加到eclipse.ini

即可
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dosgi.configuration.area.default=null
-Dosgi.user.area.default=null
-Dosgi.user.area=@user.home
-Dosgi.instance.area.default=null