У меня есть проект с некоторой зависимостью на моем первом компьютере (C1), и у меня есть компьютер (C2), у которого есть некоторые проблемы с Интернетом (он изолирован). Я хочу повторно использовать мои загруженные библиотеки из моего C1 и поместить его в C2. Я не хочу использовать файл .jar. просто файлы aar.
Можно скопировать кеш Gradle
One way you could do this is to gather all of your dependencies in an archive. For example, something like this should grab everything in all configurations:
task bundleDependencies(type: Zip) { baseName = 'dependencies' configurations.each { configuration -> if (configuration.canBeResolved) { from configuration } } destinationDir = file('your/Path') // set path }
Transfer the archive to the offline machine, extract, and use a flatDir repository (maybe conditionally if you want to use it when offline without adding it each time):
repositories { if (gradle.startParamter.offline) { flatDir { dirs 'path/to/extracted/dependencies/zip' } } }
затем запустите на C2 с параметром --offline
для gradle
Вы можете использовать задачи Почтовый индекс, Деготь или Банка для экспорта зависимостей, в зависимости от ваших предпочтений. См. создание архивов
Также должно работать простое копирование каталога .gradle в то же место (из-за абсолютных путей) от C1 до C2.
вы можете установить путь с помощью destinationDir = file('your/Path')
убедитесь, что вы поместили его в build.gradle вашего модуля, а не в корневой. В противном случае он не подберет конфигурации. (По крайней мере, это то, что заставило меня экспорт работать)
как мне запустить скрипт в студии Android? @leonardkraemer
спасибо всем. решение: 1. добавьте зависимость к вашему онлайн-компьютеру. (Gradle будет создавать и кешировать файл .aar в ".gradle \ caches \ modules-2 \ files-2.1 \ $ {YOUR.PACKAGE.NAME} \ $ {YOUR LIB NAME} \" $ {YOUR_LIB_VERSION} {HASH_FOLDER} \ ").
If you don’t know your package name just take a look at build.gradle(app level). In the dependency block you can find it like: Implemented ‘your.package.name:your lib name:your_lib_version’
2. скопируйте файл .aar.
3. на автономном компьютере откройте студию Android, затем в представлении проекта (верхний левый угол) измените Android на проект. затем перейдите в папку приложения, и вы увидите папку «библиотеки».
4. перетащите и опустите файл .aar в библиотеки и нажмите «ОК, я все равно хочу изменить этот файл»
5. затем перейдите в build.gradle (уровень приложения) и вставьте туда этот код:
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
6. поместите эту строку в блок зависимостей в build.gradle (уровень приложения)
dependencies {
compile(name:'your lib name', ext:'aar')
}
где мне искать .tar файл? @leonardkraemer