【问题标题】:Android Studio in an offline isolated environment离线隔离环境中的 Android Studio
【发布时间】:2018-08-19 15:46:18
【问题描述】:

我管理一个离线、隔离的开发环境,该环境支持许多不同类型的编码项目。我要维护的最令人沮丧的项目是我们的 Android Studio 项目。

我们的开发环境是孤立的,无法访问互联网。当我必须为用户带来一台新机器或为 Android SDK 带来更新时,通常会让人感到胃痛,因为要让建筑物在多个系统之间保持同步。

是否有详细记录的手动构建 Android 应用程序的流程,以某种方式强制 Gradle/maven 库指向一个易于复制和设置的位置?我在想 C 像构建过程一样制作文件。当我们运行 Eclipse 时,很容易启动一个新系统,只需 scp 别人的环境。是否有其他方法可以在内部镜像 Google maven 环境?

我是否过度考虑了 Android Studio 构建过程?

【问题讨论】:

    标签: android maven gradle build


    【解决方案1】:

    Gradle 构建系统需要下载您的依赖项并存储它们。下载后,只要依赖项没有变化,gradle就会自己使用它的缓存版本。

    现在,只要您的依赖项任务保持最新状态(依赖项没有改变),没有连接就应该没问题。

    您也可以手动放置依赖项的 jars 和 aars 并使用 gradle 来代替 -

    只需修改依赖项以编译您的 libs 目录,而不是让它们联机(所有那些 compile 'com.google.android.gms:play-services-location:8.3.0' 只是指向文件)并将必要的文件放在库中

    另一种轻松获取文件的方法是在连接的环境中运行一次项目并从 .gradle/caches/ 获取必要的 jars

    【讨论】:

    • 我过去复制了 .gradle/caches 目录,但是它存在于不同版本的 android studio 之间,这最终可能是导致 android studio 在想要运行之间陷入困境的问题“离线”但仍想连接下载库。
    • 可能,我认为最安全的选择是删除依赖项并直接从 libs 文件夹中获取它们...
    【解决方案2】:

    我一直在类似的条件下工作。为了使开发更容易,您应该设置存储库管理系统。两个流行的选项是Artifactory 和Nexus。在您的构建工具存储库配置中,您应该参考您的存储库管理工具地址。使用此设置,网络中的每台计算机都必须从版本控制中获取源代码并且一切顺利。(无需额外配置)
    在具有 Internet 连接的环境中,您可以根据项目准备存储库,并将这些文件传输到内部网络后,将这些文件上传到您的存储库管理工具。

    【讨论】:

      猜你喜欢
      • 2020-04-28
      • 1970-01-01
      • 2017-06-06
      • 2020-12-03
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多