1

我写了一个简单的java程序Hello.java,它看起来像:

 public class Hello {
     public static void main(String[] args) {
         System.out.println("Hello ...");
     }
 }

我希望它在grails下运行,所以我创建了一个应用程序“hello”,并将Hello.java放在src/java下,然后运行grails run-app,但是当我单击“hello.HelloController”时http://localhost:8080/hello/,它显示以下错误:

Error 500: Internal Server Error
URI:/hello/hello/index  
Class:groovy.lang.MissingPropertyException 
Message:No such property: Hello for class: hello.HelloController 

HelloController.groovy 的内容是:

class HelloController {

    def index() {
        Hello.main(null)
    }
}

任何人都可以帮助我吗?

4

4 回答 4

1

尝试将您的 Hello 文件放入一个包中

所以在 src/java

创建一个名为 test 的文件夹/包

将 Hello 放入测试

import test.Hello

class HelloController {

    def index() {
        Hello.main(null)
    }
}
于 2013-08-09T10:31:33.347 回答
0

Running grails clean,然后grails compile应该可以解决问题。

于 2013-08-09T10:24:25.893 回答
0

你必须导入类Hello

import Hello

class HelloController {

    def index() {
        Hello.main(null)
    }
}

import请参阅有关包和声明的 Java 文档:http: //docs.oracle.com/javase/tutorial/java/package/usepkgs.html

于 2013-07-12T10:34:44.743 回答
0

在 grails 3 中,您必须将 java 类放在 src/main/groovy 中。

在 src/main/groovy 中创建一个名为“test”的包

package test
public class Hello {
     public static void main(String[] args) {
         System.out.println("Hello ...");
     }
 }

并在 HelloController 中导入包

import test.Hello

class HelloController {

    def index() {
        Hello.main(null)
    }
}

这将起作用。

于 2019-11-15T06:54:43.463 回答