【问题标题】:Mysterious Scala + Eclipse compilation errors神秘的 Scala + Eclipse 编译错误
【发布时间】:2013-04-16 23:03:17
【问题描述】:

我正在使用 Eclipse 编写一个混合的 Scala 和 Java 程序。一切正常,直到大约一个小时前,一切都无缘无故地陷入困境。

在 Eclipse 中没有报告任何问题(Scala 或 Java),但 Scala 构建器似乎在某处失败。它不再产生任何类文件。现在尝试在 Scala 中运行“Hello World”会导致以下消息:

Project 'projectname' 包含编译错误(因此,没有生成二进制文件)

我正在使用 Scala 构建器的默认设置,它之前运行良好。我没有改变任何东西。

我已尝试多次清理和重建项目,但无济于事。构建进度对话框显示 Scala 和 Java 构建都成功了。程序的纯 Java 部分编译并成功执行。 (我暂时注释掉了 Java 调用 Scala 的地方,因为缺少 Scala 类文件导致“未解析的类”导入错误)

是否有 Scala 编译器错误日志可以告诉我出了什么问题?我要开始扯头发了。

我不记得我到底做了什么导致了这种情况,但它不会是什么奇特的东西:编写一些新类、一些基本的重构等等。

【问题讨论】:

  • 尝试从控制台使用 maven 构建。更详细的标志(如-X)可能会有所帮助。

标签: eclipse scala


【解决方案1】:

在构建期间首先查看 Eclipse 控制台输出。你可以看到很多有趣的东西:-)。

只有一个可能的研究方向:

我不能 100% 确定,但 AFAIR Eclipse 使用 Maven 构建 Java 和 Scala 源代码(至少在我收到的项目中)。如果您在项目根目录中看到 pom.xml 文件,就是这样,您可以尝试发出 mvn compile 之类的命令并检查日志。从本地 JAR 存储库中的问题开始,使用 Maven 可能会出现很多问题。

顺便说一句,Maven 存储库位于 ~/.m2。当然,这大部分对应于 Unix 安装。

【讨论】:

  • 查看 Eclipse 控制台输出的好主意。我发现了这个小宝石:[$anon$1] suppressed error in Java file: illegal cyclic reference involving class ExtensibleFieldSerializer [AnalysisCompile] Compilation failed 这个类在我的 Scala 代码中的一个地方使用过。我注释掉了这条线,让项目重建,然后取消注释……现在一切都恢复了。 Another StackOverflow question 表示这种怪异可能是 Scala 插件的错误。
  • :) 我在 scala 标签上的第一篇文章在这里。我在包装附近做了很多命令行工作,尤其是 Maven 和 sbt。没有 Eclipse,情况并没有太大的不同。
猜你喜欢
  • 1970-01-01
  • 2011-04-16
  • 1970-01-01
  • 2012-11-24
  • 2015-03-13
  • 2017-04-20
  • 2014-06-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多