Groovyc:意外令牌:断言-为什么? (常规2.5.6)

时间:2019-03-28 08:39:38

标签: groovy

我正在按照https://www.vogella.com/tutorials/Groovy/article.html的一些示例来学习Groovy,由于无法识别“断言”功能,我遇到了麻烦。 我会对此进行大量搜索,但一无所获,因此,我需要您的帮助以找出为什么此方法无效。

这是来自IDE的代码和消息:

groovy_assert_unexpected_token

来自命令行的相同问题:

groovyc_assert_unexpected_token

谢谢!


编辑:

我正在重新阅读链接的文章,现在我可以看到为什么第一次对我不起作用:因为我将代码复制到IDE中,但是应该以这种方式编写的那些示例将被执行直接进入GroovyConsole。

如果我将代码复制到GroovyConsole中,则它执行OK,但是要使其在IDE中的常规代码上起作用,则必须使用类和方法代码进行包装。

感谢@dagget!

1 个答案:

答案 0 :(得分:1)

您的类包含代码,但是您必须将代码放入类的方法中

def ...-声明类变量,没关系

但是assert-是代码,必须在函数中:

class A{
    int i=1
    public static void main(String[] arg){
        assert i==2
    }
}

或者您可以跳过类声明,那么上面的代码将如下所示:

int i=1
assert i==2