2010-09-15 13 views
0

J'ai deux ou trois classes de domaine défini, des employés et EmployeeDesiredSkill,blocs statiques groovy pour la définition de la relation

employé a

static hasMany = [employeeSkill:EmployeeDesiredSkill] 

et EmployeeDesiredSkill a

static belongsTo = [employee:Employee] 

Pourtant groovyc me donne un tas d'erreurs comme le suivant:

[groovyc] Compiling 15 source files to C:\dev\JavaTest\target\classes 
[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: 
[groovyc] C:\dev\JavaTest\grails-app\domain\javatest\Employee.groovy: 6: Apparent variable 'EmployeeDesiredSkill' was found in a static scope but doesn't refer to a local variable, static field or class. Possible causes: 
[groovyc] You attempted to reference a variable in the binding or an instance variable from a static context. 
[groovyc] You misspelled a classname or statically imported field. Please check the spelling. 
[groovyc] You attempted to use a method 'EmployeeDesiredSkill' but left out brackets in a place not allowed by the grammar. 
[groovyc] @ line 6, column 44. 
[groovyc] ny = [employeeDesiredSkills : EmployeeDe 
[groovyc]        ^

Qu'est-ce que cela signifie exactement? C'est comme il ne réalise pas EmployeeDesiredSkill est une classe de domaine

+1

Sont-ils dans le même paquet? Sinon, vous aurez besoin d'une importation pour EmployeeDesiredSkill –

+0

Je pense que Burt a identifié le problème. J'ai fait un test rapide et essayé d'exécuter une application avec une classe de domaine qui n'a pas importé correctement une autre classe de domaine et a obtenu exactement la même erreur. – proflux

Répondre

2

Je suppose que c'est une application de grails et votre essayant d'utiliser les classes de domaine à partir de lui. Si c'est le cas, vous devez faire grails compiler au lieu d'appeler directement groovyc. En appelant groovyc directement votre saut des étapes où Grails inclut toutes ses dépendances pendant la phase de compilation. Si vous essayez d'utiliser Grails GORM à partir d'un projet simple groovy voir this link