我正在尝试检索Google Reporting API的库:
compile 'com.google.apis:google-api-services-analytics:v3-rev74-1.17.0-rc'
但我得到了一个未解决的依赖项错误,我不知道如何处理它:
:: commons-codec#commons-codec;1.6: configuration not found in commons-codec#commons-codec;1.6: 'master'. It was required from org.apache.httpcomponents#httpclient;4.0.1 compile
我检查了.grails \ ivy-cache \文件夹,并且有一个commons-codec文件夹,其中包含jars of commons-codec-1.5,少数xml文件ivy-1.5.xml和ivy-1.6.xml以及ivydata- 1.5.properties和ivydata-1.6.properties。我也试图删除整个ivy-cache文件夹,但结果是一样的。
答案 0 :(得分:5)
在我的grails项目中,我通过从常春藤缓存中删除文件夹“commons-codec”来解决它。依赖关系是新加载的,然后解决了错误。
答案 1 :(得分:3)
在写完我的问题后,我找到了答案。将“compile”范围更改为“build”应该可以解决错误:
build 'com.google.apis:google-api-services-analytics:v3-rev74-1.17.0-rc'
实际上这解决了我之前的问题,但提出了另一个问题:)“构建”范围仅在编译时包含库,但不在运行时!因此,部署到Tomcat时,我没有google-api-services-analytics可用。我的最终解决方案是:
dependencies {
def googleLibVersion = "1.17.0-rc"
compile("com.google.apis:google-api-services-analytics:v3-rev74-${googleLibVersion}") {
excludes "commons-codec"
}
compile("com.google.http-client:google-http-client-jackson2:${googleLibVersion}") {
excludes "commons-codec"
}
}
答案 2 :(得分:0)
删除.ivy2 / cache /帮我解决依赖关系。