@defcore

Как отправить классы некоторых (не всех) библиотек в бинарник в Gradle?

Изначально мне нужно было, чтобы в бинарнике моего проекта лежали помимо моих классов, еще и классы некоторых библиотек.
Нашел такое решение для Gradle:
jar {
    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}

Но мне такое не подходит, т.к. эта строчка отправляет классы абсолютно всех библиотек, что я использую, в бинарник и получается помойка.
Так вот, к сути вопроса: как мне отправить классы только одной библиотеки в мой бинарник? Например, классы библиотеки json-simple (com.googlecode.json-simple', name: 'json-simple', version: '1.1.1)
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
Может так?
jar {
  from {
    configurations.compile.resolvedConfiguration.resolvedArtifacts.findAll {
      it.moduleVersion.id.with { it.group == 'com.googlecode.json-simple' && it.name == 'json-simple' }
    } collect {
      it.file.with { it.isDirectory() ? it : zipTree(it) }
    }
  }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 22:26
3500 руб./за проект
22 нояб. 2024, в 21:47
3000 руб./за проект
22 нояб. 2024, в 21:44
50000 руб./за проект