2014-01-14 4 views
1

после некоторых рефакторингов grails не находит классы из сценария gant.grails: gant не разрешает вызывающие классы

Драйвер gant находится в плагине (в формате ZIP в/lib) и использует несколько классных классов. Сценарий не может быть разрешен этими классами.

Я уже пробовал: зависает от grails, grails clean-all, удаляя каталог {home} /. Grails, начиная новый проект и добавляя туда плагин, добавляя его в maven и ссылаясь на него как зависимость ...

У меня пока нет подсказки ... мне нужна помощь в этом.

Исключение:

| 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 

в BuildConfig.groovy:

компиляции '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

Смежные вопросы