5

我正在尝试检索 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 文件夹,里面有 commons-codec-1.5 的 jars,一些 xml 文件 ivy-1.5.xml 和 ivy-1.6.xml 以及 ivydata-1.5.properties 和 ivydata- 1.6.属性。我也尝试删除整个 ivy-cache 文件夹,但结果是一样的。

4

3 回答 3

5

在我的 grails 项目中,我通过从常春藤缓存中删除文件夹“commons-codec”来解决它。依赖项是新加载的,错误已解决。

于 2014-01-14T15:25:44.047 回答
3

刚写完我的问题,我就找到了答案。将“编译”范围更改为“构建”应该可以解决错误:

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"
        }
}
于 2013-11-03T09:53:52.983 回答
0

删除.ivy2/cache/帮助我解决了依赖关系。

于 2017-12-04T06:39:46.873 回答