出於某種原因,'grails war'在「WEB-INF/lib」中包含'groovy-1.6.9.jar'和'groovy-all-1.7.8.jar'文件。我與Grails的1.3.7工作,當我部署在Tomcat中這場戰爭,我收到以下錯誤:Groovy舊版Grails戰爭
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.codehaus.groovy.control.SourceUnit.getSource()Lorg/codehaus/groovy/control/io/ReaderSource;
我能夠部署戰爭的唯一方式是移除舊的常規文件,該應用程序運行良好。
我調試的依賴過程和所有我能找到的是這樣的:
[NOT REQUIRED] org.codehaus.groovy#groovy;1.6.9!groovy.jar
...
:: evicted modules:
junit#junit;3.8.2 by [junit#junit;4.8.1] in [test]
in org.codehaus.groovy#groovy;1.6.9 with latest-revision
所以,我繼續和到了的文件「org.codehaus.groovy.modules.http建設者/ HTTP建設者/常春藤0.5.0-RC2.xml」,這包含以下內容:
<dependency org="org.codehaus.groovy" name="groovy" rev="[1.5,1.6.99)"
我改變此行以‘[1.7,1.7.8)’和依賴性過程工作正常,現在戰爭的部署沒有任何問題,但我從來沒有碰過這個,我很擔心。這是繼續使用Grails依賴關係的正確方法嗎?
所有這些在安裝JQuery UI插件後開始發生,即使在刪除它之後,問題仍然存在。
感謝
我沒有在BuildConfig這種依賴性。回顧結果,似乎我的應用程序具有Apache HTTPClient的這種依賴關係。無論如何,我已經按照原樣添加了示例,並且使用http-builder:0.5.0和http-builder:0.5.0-RC2創建了這場戰爭。我想我可能會把所有的依賴都歸咎於STS,但是你的迴應讓我朝着正確的方向正確解決這個問題。謝謝。 – Eldelshell 2011-03-03 09:34:49