2015-01-12 23 views
2

我在我的grails 2.3.6應用程序中有一個奇怪的行爲。無法在grails中安裝http-builder

我想使用groovyx.net.http.HTTPBuilder,但IDE報告說它無法解析類。

所以,我添加下面一行到我BuildConfig.groovy:

build "org.codehaus.groovy.modules.http-builder:http-builder:0.7" 

,但我得到以下異常:

$ grails run-app MyApp 
| Configuring classpath 
| Error Resolve error obtaining dependencies: Could not find artifact org.codehaus.groovy.modules.http-builder:http-builder:zip:0.7 in grailsCentral (http://repo.grails.org/grails/plugins) (Use --stacktrace to see the full trace) 
| Error Could not find artifact org.codehaus.groovy.modules.http-builder:http-builder:zip:0.7 in grailsCentral (http://repo.grails.org/grails/plugins) 
| Run 'grails dependency-report' for further information. 

我的倉庫中BuildConfig.groovy:

mavenRepo "http://repository.codehaus.org" 
mavenRepo "http://download.java.net/maven/2/" 
mavenRepo "http://repo.spring.io/milestone/" 
mavenRepo "http://www.hibernatespatial.org/repository" 
mavenRepo "https://oss.sonatype.org/content/groups/public/" 
mavenRepo "http://repo.grails.org/grails/core" 

奇怪的是它應該在那裏:http://repo.grails.org/grails/webapp/search/artifact/?1&q=http-builder

有什麼想法?我清理了,刪除〜/ .m2,〜/ .groovy,〜/ .grails

謝謝!

+0

奇怪。它爲我工作。我使用'runtime('org.codehaus.groovy.modules.http-builder:http-builder:0.7.1')'作爲依賴項。 – sebnukem

+0

已下載其他用戶,所以它不是代理?這是通過maven還是常春藤? – cfrick

+0

0.7在這裏工作。你把它放在'plugins'而不是'dependencies'中嗎? – cfrick

回答

3

問題是你的依賴範圍,它應該是compile而不是build。換句話說,與

compile "org.codehaus.groovy.modules.http-builder:http-builder:0.7" 

替換此

build "org.codehaus.groovy.modules.http-builder:http-builder:0.7" 

如果你仍然有問題,交叉引用您的BuildConfig.groovythis one,它正確地宣佈這個庫的依賴性。

+1

謝謝@Donal!我在「插件」中引用了引用,而不是在「依賴」中。但IDE繼續將HttpBuilder標記爲「無法解析」,但運行應用程序會通過。 – elkarel

+0

@elkarel我想你正在使用Eclipse?對Grails的支持不是非常可靠的IMO,它經常會報告這樣的虛假錯誤。 –

+0

是的,IDE基於Eclipse及其明顯的項目策略: - /謝謝! – elkarel