2014-01-14 27 views
1

,grails沒有從gant腳本中找到類。grails:在一些重構之後,gant不能解析調用類

gant腳本位於一個插件(作爲/ lib中的ZIP),並使用幾個常規類。這些類無法通過腳本解決。我已經嘗試過: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

相關問題