Как избежать выборки исходного jar-файла из зависимости flatDir с помощью Gradle - PullRequest
2 голосов
/ 10 ноября 2011

У меня есть скрипт сборки Gradle со смешанными зависимостями Maven (я использую Maven Central для разрешения зависимостей) и локальный каталог.Фрагмент таков:

repositories {
    mavenCentral()

    flatDir name: 'directoryRepository', dirs: 'tools/libs'
}

Затем мне нужно объявить свои локальные зависимости следующим образом:

dependencies {
    compile ":commons-cli:1.0@jar"
}

Я не могу использовать обозначения файлов ('...') (потому что другиечасти скрипта завершатся с ошибкой приведения класса из Array к HashMap, и я не могу изменить эту часть).

Файлы JAR правильно добавляются в путь сборки.Проблема в том, что Gradle хочет получить для каждого jar в 'tools / libs' другой jar -source.Действительно, если у меня в папке tools / libs:

commons-cli-1.0.jar
commons-cli-1.0-sources.jar

все работает нормально.Если я удаляю исходный файл jar, он выдает ошибку «невозможно разрешить зависимость», указывая на файл -source jar.

У меня есть более 50 файлов для управления таким образом, и, конечно, я неисходные банки (и мне это не интересно).

Как я могу исключить выборку исходных файлов?

Заранее большое спасибо за любые подсказки.

Фабио ДаSoghe

1 Ответ

3 голосов
/ 11 ноября 2011

Если вы используете IDEA, есть настройка для всего модуля ideaModule.downloadSources = false, которая может помочь, но отключит загрузку всех источников для IDEA.

Не уверен, что вы имели в виду под files(...), но как насчет этого?

dependencies{
  ...
  compile fileTree( dir: "toos/lib", include: '*.jar' )
  ... or ...
  compile fileTree( dir: "toos/lib", includes: ['*.jar'] )
}

Edit:

Похоже, есть связанный отчет об ошибке , исправленный в вехе 5. Попытка показала, что ошибка все еще существует, но теперь это просто предупреждение, и сборка будет успешной. По всей видимости, предупреждение исходит от Айви, поэтому исправить его нелегко: (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...