2010-04-16 7 views
29

"Grails in Action"책을 통해 작업 중이며, grails 콘솔을 소개하는 부분에 갇혀 있습니다. 내 프로젝트 디렉토리에서, 나는 콘솔 창을 엽니 다 "Grails의 콘솔"을 입력하고, 콘솔도 출력 정보는 클래스를 컴파일하는 표시하지만, 때 콘솔에이를 입력 :Grails 콘솔 - 클래스를 찾을 수 없습니까?

new Quote(author:'Larry Wall',content:'There is more than one method to our madness.').save()

나는이를 얻을 수 오류 :

unable to resolve class Quote 
at line: 1, column: 1 

인용 클래스는 grails-app/domain/qotd/Quote.groovy에 Quote.groovy 존재, 나는 위의 명령을 실행할 수 아니에요.

여기에 무슨 문제가 있습니까?

답변

44

도메인 클래스가 포함 된 패키지를 인스턴스화하기 전에 가져 오기를 시도 했습니까?

import qotd.Quote 
new Quote(author:'Larry Wall',content:'There is more than one method to our madness.').save() 

당신은 또한 전체 수식 명을 지정 시도 할 수 있습니다해야합니다 :

new qotd.Quote(author:'Larry Wall',content:'There is more than one method to our madness.').save() 
+10

실행 이상한. 이 책에서 언급하지 않았기 때문에 나는 자동 가져 오기 마법 같은 것을 얻고 있다고 가정했다. –

+1

이것은 Grails In Action의 문제점입니다. 글을 쓰는 당시에는 효과가 있었지만 나중에 grails 버전으로 바뀌 었습니다 ... – oligofren

+1

동일한 문제가 발생했습니다.이 답변의 제안에도 불구하고 여전히 성공하지 못했습니다. 다른 아이디어? –

0

는이 같은 문제를 해결 Grails의 도구 컨텍스트 메뉴에서 "새로 고침 종속성"을 선택처럼 보인다.

6

나는 액션 두 번째 버전 (2.1.1)에 Grails에의 MEAP를 통과 및 솔루션이 실행되는 것을 발견 해요 :

grails clean 
grails console 

유형 그루비 콘솔에서 코드를 다시

관련 문제