2 回答
TA贡献1851条经验 获得超5个赞
你可以复制gradle缓存
您可以这样做的一种方法是将所有依赖项收集在存档中。例如,这样的事情应该抓住所有配置中的所有内容:
task bundleDependencies(type: Zip) {
baseName = 'dependencies'
configurations.each { configuration ->
if (configuration.canBeResolved) { from configuration }
}
destinationDir = file('your/Path') // set path
}
将存档传输到离线机器,提取并使用 flatDir 存储库(如果您想在离线时使用它而不每次都添加它,可能有条件):
repositories {
if (gradle.startParamter.offline) {
flatDir { dirs 'path/to/extracted/dependencies/zip' }
}
}
然后使用--offlinegradle 参数在 C2 上运行
您可以根据自己的喜好使用Zip、Tar或Jar任务来导出依赖项。请参阅创建档案
也只是将 .gradle 目录从 C1 到 C2 的简单复制到相同的位置(因为绝对路径)应该可以工作。
TA贡献1770条经验 获得超3个赞
解决方法是: 1. 为你的在线计算机添加依赖。(gradle 将在“.gradle\caches\modules-2\files-2.1\${YOUR.PACKAGE.NAME}\${YOUR”中构建和缓存 .aar 文件LIB 名称}\${YOUR_LIB_VERSION}{HASH_FOLDER}\")。
如果您不知道您的包名称,请查看 build.gradle(app level)。在依赖块中,您可以找到它,例如:Implemented 'your.package.name:your lib name:your_lib_version'
2.复制.aar文件。
3.在离线电脑中打开android studio,然后在项目视图(左上角)中将android更改为project。然后转到 app 文件夹,您可以看到“ libs ”文件夹。
4.将 .aar 文件拖放到 libs 中,然后单击“好的,我仍要修改此文件”
5.然后转到 build.gradle(app level) 并将此代码粘贴到那里:
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
6.将此行放在build.gradle(app level)的依赖块中
dependencies {
compile(name:'your lib name', ext:'aar')
}
添加回答
举报