java - groovyc 不会报告多个错误

标签 java intellij-idea groovy

我正在尝试使用 Groovy,特别是从 Java 应用程序中编译和运行 Groovy 类。

当然,Groovy 可能存在编译问题,并且我看到有关报告编译问题的不同行为 - 在命令行上运行 groovyc 或使用 GroovyClassLoader 加载类 - 使用 Intellij 等 IDE。

这是我的测试 Groovy:

package test;

class MyTestGroovyClass2 {

    causesACompileError();
    alsoCausesACompileError();
}

在groovyc中并使用GroovyClassLoader,只报告第一个错误:

groovyc "src\test\MyTestGroovyClass2.groovy"

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
C:\Users\barrettr\IdeaProjects\TestGroovy\src\test\MyTestGroovyClass2.groovy: 5: unexpected token: causesACompileError @ line 5, column 2.
        causesACompileError();
    ^

1 error

...但是在 IntelliJ 中我看到两个错误: enter image description here

我通过 GroovyClassLoader 进行了简要调试,发现它在发现第一个错误后停止了。

Groovy 是否支持像 IntelliJ 那样报告多个错误?

最佳答案

IntelliJ 利用自己的解析器尝试尽可能多地解析。 在第一个解析错误之后,解析器状态将恢复,然后解析器尝试处理下一条语句。

关于java - groovyc 不会报告多个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40284991/

相关文章:

java - 两个具有相同方法名称但返回类型不同的 Java 接口(interface)

java - 我想创建一个程序,以随机顺序打印 1 到 1,000,000 之间的数字。号码不得重复或遗漏

Android Studio - 无法从 SVN 分支合并

Jenkins、Groovy 和 Regex

java - 如何防止GWT对话框被拖出屏幕?

java - iText 生成的 PDF 在 Chrome 中无法正确显示

ruby-on-rails - 如何在 IntelliJ IDEA 中设置 ruby​​ SDK?

intellij-idea - IntelliJ-不问我是否要保存文件

Jenkins 管道: Get build output from slave agent

unit-testing - Groovy,如何模拟接口(interface)保持其他方法