Groovy断言失败

Groovy断言失败,groovy,Groovy,我学习Groovy语言。我在Windows10x64上使用GroovySDK3.0.6。我阅读了参考文件。文件Hello.groovy // đây là ghi chú. println("Hello Hanoi"); /* Đây là ghi chú nhiều dòng. Cần thêm 1 dòng nữa. */ /**@ * Nhân viên. */ class Employee{ /**@ * In ra câu thông

我学习Groovy语言。我在Windows10x64上使用GroovySDK3.0.6。我阅读了参考文件。文件
Hello.groovy

// đây là ghi chú.
println("Hello Hanoi");

/*
Đây là ghi chú nhiều dòng.
Cần thêm 1 dòng nữa.
 */

/**@
 * Nhân viên.
 */
class Employee{

    /**@
     * In ra câu thông báo có tham số đầu vào.
     *
     * @param text
     * @return
     */
    String hello(String employeeName){
        "Xin chao, ${employeeName}";
    }
}

assert Employee.groovydoc.content.contains('Nhân')
/**@
 * Some class groovydoc for Foo
 */
class Foo {
    /**@
     * Some method groovydoc for bar
     */
    void bar() {
    }
}

assert Foo.class.groovydoc.content.contains('Some class groovydoc for Foo')
assert Foo.class.getMethod('bar', new Class[0]).groovydoc.content.contains('Some method groovydoc for bar')

我看到了错误

D:\github>groovy Hello.groovy
Picked up _JAVA_OPTIONS: -Xmx512M
Hello Hanoi
Caught: Assertion failed:

assert Employee.groovydoc.content.contains('Nhân')
                |         |       |
                |         ''      false
                groovy.lang.groovydoc.Groovydoc$1@3688eb5b (toString() == "")

Assertion failed:

assert Employee.groovydoc.content.contains('Nhân')
                |         |       |
                |         ''      false
                groovy.lang.groovydoc.Groovydoc$1@3688eb5b (toString() == "")

        at Hello.run(Hello.groovy:25)

D:\github>
  • 第二次
文件
Employee2.groovy

// đây là ghi chú.
println("Hello Hanoi");

/*
Đây là ghi chú nhiều dòng.
Cần thêm 1 dòng nữa.
 */

/**@
 * Nhân viên.
 */
class Employee{

    /**@
     * In ra câu thông báo có tham số đầu vào.
     *
     * @param text
     * @return
     */
    String hello(String employeeName){
        "Xin chao, ${employeeName}";
    }
}

assert Employee.groovydoc.content.contains('Nhân')
/**@
 * Some class groovydoc for Foo
 */
class Foo {
    /**@
     * Some method groovydoc for bar
     */
    void bar() {
    }
}

assert Foo.class.groovydoc.content.contains('Some class groovydoc for Foo')
assert Foo.class.getMethod('bar', new Class[0]).groovydoc.content.contains('Some method groovydoc for bar')


如何修复它?如何正确运行它?

很容易出错,但从中,需要以下标志才能在运行时使用Groovydoc:

groovy -Dgroovy.attach.runtime.groovydoc=true Employee2.groovy

很容易错过,但从中可以看出,要在运行时拥有Groovydoc,需要以下标志:

groovy -Dgroovy.attach.runtime.groovydoc=true Employee2.groovy