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

标签 java eclipse ant ivy ivyde

我刚刚遇到了 Apache Ivy 错误 java.lang.ClassCastException: org.eclipse.osgi.internal.framework.EquinoxConfiguration$1 cannot be cast to java.lang.String ( link ) 在执行 Ant 任务时 ivy:config

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

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

我整个上午都在试图解决这个问题,但我不得不恢复之前未提交的工作区和 Eclipse 安装,所以现在除了上述错误之外,我的一切都正常工作。直到今天早上,Ivy 工作正常。

我的每个 Ant 任务都在与 Eclipse 相同的 JRE 中运行(C:\Program Files\Java\jdk1.7.0_60\jre\bin\server\jvm.dll 根据 sts.ini) 因为我经常使用 eclipse.refreshLocal 任务。虽然我可以通过在标准 JRE 中删除/注释 eclipse.refreshLocal 任务 运行 Ant-Ivy 任务来解决这个问题,但我想知道是否有解决方法消除错误,可能是通过删除工作区元数据中的关键文件。

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

最佳答案

这看起来与 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

关于java - 摆脱无法转换为 String 的 org.eclipse.osgi.internal.framework.EquinoxConfiguration$1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26279570/

相关文章:

java - 如何控制库类的 Jackson 序列化

java - Eclipse:详细格式化程序错误:<key> 无法解析为变量

ant - 尝试使用 ANT 获取目录中所有文件的文件名

eclipse - 将eclipse项目.classpath依赖项提取到ant脚本中

Java:匿名枚举?

java - 为什么它不会造成僵局?

java - Google Web Toolkit Eclipse @Persistent(序列化 ="true")未在构造函数中更新

java - 读取文件 skin.json libgdx 时出错

java - 获取最后提交者的用户名?

java - 操作系统版本、API 级别和 Java 版本之间的关系