我在grails 2.2.3
app,
├── src
│ ├── groovy
│ │ └── eccount
│ │ ├── Query.groovy // extends Queries.DefaultQuery
│ │ ├── Listener.groovy
│ │ ├── Elasticsearch.groovy
│ │ ├── Queries.groovy // extends ElaticsearchQueries
│ └── java
│ └── eccount
│ ├── ElasticsearchQueries.java // public class
│ ├── EsServer.java
我一直在使用来自src/java
的{{1}}明确写在 grails-app/services
中,这很好。但是,当尝试从groovy
访问现有src/java
时看起来很奇怪。
src/groovy
工厂类如下,
ElasticsearchQueries.java
Groovy实现类如下,
package eccount;
public class ElasticsearchQueries {
public static class DefaultQuery implements IQuery {
//
}
}
根据我的理解,它应该有效。但我假设其他一些问题。
这是package eccount;
public class Queries extends ElasticsearchQueries {
//
}
package eccount;
public class Query extends Queries.DefaultQuery {
//
}
,
grails clean && grails compile
Github代码 - gccount-groovy-groovy-java