Суффикс версии Gradle-зависимостей - PullRequest
0 голосов
/ 06 июня 2019

В моем скрипте сборки gradle у меня есть следующее

dependencies {
    compile 'foo.bar:beef:1.2.3@aar'
}
  1. Для чего нужен суффикс aar?
  2. В чем разница между использованием compile 'foo.bar:beef:1.2.3@aar' против compile 'foo.bar:beef:1.2.3'

Ответы [ 2 ]

1 голос
/ 06 июня 2019

Из документации

Символ @ отделяет координаты зависимости от расширения файла артефакта.

Так вот:

dependencies {
    compile 'foo.bar:beef:1.2.3@aar'
}

эквивалентно этому:

dependencies {
    compile(group: 'foo.bar', name: 'beef', version: '1.2.3', extension: 'aar')
}

Расширением по умолчанию является «.jar», если не указано.

0 голосов
/ 07 июня 2019

Пожалуйста, проверьте следующую ссылку:

Почему я должен включать зависимость gradle как `@ aar`

Здесь вы можете заметить, что в gradle она обозначаетсякак «aar», где, как и в других средах разработки Java, он обозначается как «.jar».Таким образом, этот суффикс «aar» - это не что иное, как архив.

Основное различие между Jar и AAR состоит в том, что в AAR входят такие ресурсы, как макеты, рисованные элементы и т. Д. Это значительно упрощает создание автономныхвизуальные компоненты.Например, если у вас есть несколько приложений, использующих один и тот же экран входа в систему, с помощью Jars вы можете совместно использовать классы, но не макет, стили и т. Д., Вам все равно придется дублировать их.С AAR все упаковано в один аккуратный пакет.

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