Неразрешенные зависимости для общего кодека

Я пытаюсь получить библиотеку для API отчетов Google:

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 с jar-файлами commons-codec-1.5, несколькими xml-файлами ivy-1.5.xml и ivy-1.6.xml и ivydata-1.5.properties и ivydata-1.6.properties. Я также пытался удалить всю папку ivy-cache, но результат тот же.

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"
        }
}

В моем проекте grails я решил это, удалив папку "commons-codec" из ivy-cache. Зависимость была загружена заново, и ошибка была устранена.

Удаление.ivy2/cache/ помогите мне разрешить зависимости.

Другие вопросы по тегам