2014-01-14 6 views
1

을 해결하지 못하면 grails는 gant 스크립트에서 클래스를 찾지 않습니다.grails : gant가 일부 리팩토링 후 호출 클래스

갠트 스크립트는 플러그인 (/ lib의 ZIP)에 있으며 여러 그루비 클래스를 사용합니다. 이러한 클래스는 스크립트로 해결할 수 없습니다.

나는 이미 시도했다 : grails refresh-dependencies, grails clean-all, {home} /. grails 디렉토리 삭제, 새 프로젝트 시작 및 플러그인 포함, 메이븐에 추가하고 의존성으로 참조 ...

저는 단서가 없습니다.이 문제에 대한 도움이 필요합니다.

는 예외입니다 : BuildConfig.groovy에서

| Error Error executing script GenerateMyDomain: startup failed: 
GenerateMyDomain: 1: unable to resolve class de.company.my.mybackend.scaffolding.GenerateMyDomainClass 
@ line 1, column 1. 
GenerateMyDomain: 2: unable to resolve class de.company.my.mybackend.scaffolding.JavaParser 
@ line 2, column 1. 
2 errors 

:

컴파일 'de.company:my:0.1'

사람이 다른 생각을 가지고 않습니다

? 감사합니다.

편집 : 플러그인의 누락 된 클래스는 원래 src/groovy에 있습니다. 그것들은 .zip 패키지에도 포함되어 있습니다.

답변

1

Gant 스크립트에서 클래스를 직접 인스턴스화 할 수없는 것으로 보입니다. 나는 이유를 모른다. 그러나 그것은 이전에 일했다.

해결 방법은 리플렉션을 통해 클래스를 인스턴스화하는 것입니다.

mcLoader = classLoader.loadClass('plugin.ui.scaffold.UserInterfaceTemplateGenerator') 
def instanciatedClass = mcLoader.newInstance(classLoader) 

에서 : NoClassDefFoundError GANT script on Grails