繁体   English   中英

如何使用src / groovy类?

[英]How to use src/groovy classes?

我有一个域需要引用我在src / groovy目录下创建的类。 我正在按照上面的例子: http ://grails.org/doc/2.1.0/ref/Domain% 20Classes / embedded.html

===>
class Person { String name
 Country bornInCountry
 Country livesInCountry

 static embedded = ['bornInCountry', 'livesInCountry']
}

// If you don't want an associated table created for this class, either
// define it in the same file as Person or put Country.groovy under the
// src/groovy directory.
class Country {
 String iso3
 String name
}

根据评论文本,Country类可以保留在src / groovy目录中。 但是当我在此目录下创建此类Country时,Person类不再识别它。 错误“Groovy:无法解析类国家/地区”显示在下面的行中:

Country bornInCountry
Country livesInCountry

我该如何解决这个问题? 有没有办法使用import语句进行引用?

谢谢,

Pedro Gentil

这取决于每个类所在的包。如果它们在同一个包中,那么你可以这样做:

域类:

// grails-app/domain/mypackage/Person.groovy
package mypackage

class Person {
    Country bornInCountry

    // ...
}

非域类:

// src/groovy/mypackage/Country.groovy
package mypackage

class Country {
    // ...
}

如果它们不在同一个包中,那么您可以通过向Person类添加适当的import语句来解决问题:

域类:

// grails-app/domain/mypackage/Person.groovy
package my package

import someotherpackage.Country

class Person {
    Country bornInCountry

    // ...
}

非域类:

// src/groovy/someotherpackage/Country.groovy
package someotherpackage

class Country {
    // ...
}

这应该可以解决你的编译问题。

我希望有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM