本地 gradle 存储库镜像
Local gradle repository mirror
我需要在没有网络连接的电脑上构建 android 应用程序(或者只有本地网络没有外部访问)。
如何为 gradle 的二进制文件和应用程序依赖项创建本地存储库镜像?而是使用本地目录,但如果不可能,那么我可以在本地机器上使用一些人工服务 运行?
如果您可以使用连接构建一次Gradle 会将依赖项下载到它自己的缓存中(在Gradle 用户主目录下)。然后运行就变成了./gradlew --offline
就进不去网络了
运行 Nexus 或 Artifcatory 存储库的本地安装是另一种选择。您可以在那里配置一个代理存储库,即使您没有网络连接,它也会再次为您缓存的工件提供服务。
需要解决两个问题:
正在下载 gradle
的二进制文件
正在从远程存储库下载工件。
通过更改 gradle/wrapper/gradle-wrapper.properties 文件解决的第一个问题:
distributionUrl=../../cache/gradle-2.2.1-all.zip
其中值是 gradle 二进制文件的本地副本的路径。
Sonatype Nexus 服务器解决了第二个问题。启动它并使用默认帐户登录:admin/admin123
在 Maven 中央存储库代理的设置中,更改缓存文件夹路径上的参数 Override Local Storage Location
。
在项目中,将 mavenCentral() 替换为下一个:
repositories {
maven { url "http://localhost:8081/nexus/content/repositories/central/" }
}
建立你的项目。现在项目的所有部门都位于您的缓存文件夹中。
然后你可以在缓存文件夹的路径上替换 Maven url:
repositories {
maven { url "file://" + project.getRootDir().absolutePath + "/cache" }
}
现在你可以在没有网络连接的情况下将缓存文件夹复制到电脑上,并且绝对离线构建项目
我需要在没有网络连接的电脑上构建 android 应用程序(或者只有本地网络没有外部访问)。
如何为 gradle 的二进制文件和应用程序依赖项创建本地存储库镜像?而是使用本地目录,但如果不可能,那么我可以在本地机器上使用一些人工服务 运行?
如果您可以使用连接构建一次Gradle 会将依赖项下载到它自己的缓存中(在Gradle 用户主目录下)。然后运行就变成了./gradlew --offline
就进不去网络了
运行 Nexus 或 Artifcatory 存储库的本地安装是另一种选择。您可以在那里配置一个代理存储库,即使您没有网络连接,它也会再次为您缓存的工件提供服务。
需要解决两个问题:
正在下载 gradle
的二进制文件
正在从远程存储库下载工件。
通过更改 gradle/wrapper/gradle-wrapper.properties 文件解决的第一个问题:
distributionUrl=../../cache/gradle-2.2.1-all.zip
其中值是 gradle 二进制文件的本地副本的路径。
Sonatype Nexus 服务器解决了第二个问题。启动它并使用默认帐户登录:admin/admin123
在 Maven 中央存储库代理的设置中,更改缓存文件夹路径上的参数 Override Local Storage Location
。
在项目中,将 mavenCentral() 替换为下一个:
repositories {
maven { url "http://localhost:8081/nexus/content/repositories/central/" }
}
建立你的项目。现在项目的所有部门都位于您的缓存文件夹中。
然后你可以在缓存文件夹的路径上替换 Maven url:
repositories {
maven { url "file://" + project.getRootDir().absolutePath + "/cache" }
}
现在你可以在没有网络连接的情况下将缓存文件夹复制到电脑上,并且绝对离线构建项目