0
当我运行一个正在工作的Java类和一个不完整的非工作Scala类时,该编译器并没有说错误出现在Scala文件中。从Java调用Scala时出现错误的编译错误
编译器应该说错误出现在Scala类中,并且由于程序在Scala类中失败而指向行号,而且错误出现在Scala文件中。
这适用于我仅在Java中描述的程序,而不是在Java中使用Scala程序。
为什么它不按预期工作,我该如何解决这个问题?
编辑
在进一步审查,我发现在消息窗口中的错误位置,但这不是运行输出。很多时候,在一个大型项目中,有很多文件正在进行,错误会使消息窗口混乱。我需要这个在运行输出中打印错误信息。 Java做到这一点,为什么不能Scala?
错误:
Exception in thread "main" java.lang.ClassNotFoundException: compile_error_test.JavaClass
at java.net.URLClassLoader$1.run(URLClassLoader.java:359)
at java.net.URLClassLoader$1.run(URLClassLoader.java:348)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:347)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:182)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:116)
你可以看到如何与一个足够复杂的程序,这可能导致浪费发现有错误的文件的时间。
JavaClass.java
public class JavaClass {
public void callScalaClass() {
ScalaClass scalaClass = new ScalaClass();
scalaClass.scalaTestMethod();
}
public static void main(String[] args) {
new JavaClass().callScalaClass();
}
}
ScalaClass.scala
class ScalaClass {
def scalaTestMethod(): Unit = {
// Purposefully Undefined
var nonDefinedVar =
}
}
在什么样的环境下你试图编译这些文件?你能分享一下你正在使用的编译工作流程的更多细节吗? – ale64bit
我正在使用intelliJ,Java 8和Scala 2.11。你在IDE中得到了什么样的错误消息? – BAR
没有人试过这个? – BAR