android-studio - 使用 Gradle 配置 Android Studio

标签 android-studio gradle configuration android-gradle-plugin build.gradle

导入 gradle 项目后,我在配置 Android Studio 时遇到问题。我的项目结构如下:

Root Project
|_.config
    |_settings.gradle
    |_build.gradle
|_app_module
|_lib1_module
|_lib2_module
|_ etc.

请注意,出于多种原因,我是 无法将 settings.gradle 和 build.gradle 文件移动到项目根目录。另外,上面提到的文件配置正确,所以构建没有问题。

所以问题是,一旦导入项目,所有与 gradle 相关的文件和文件夹都会在 .config 文件夹中生成,这不会打扰我。
.idea 文件夹和所有相关的子文件夹也是在这个文件夹中生成的。

所以这就是问题所在。出于某种原因,工作室无法识别所有子模块都处于源代码控制之下。 IE。它的 vcs.xml 是空的,只包含项目根目录。实际上,通过 添加模块即可解决问题。设置--> 颠覆 菜单,但我真的很喜欢开箱即用的解决方案。我试图将 .idea 文件夹放在源代码控制下 - 没有帮助。项目创建后,vcs.xml 被重新编写并再次清空。

所以,主要问题是:
有没有可能
  • 强制工作室生成 .idea 文件夹和根项目文件夹而不更改 .gradle 文件的位置
  • 制作工作室不是 在项目导入时重写其设置文件(例如,保留预定义的 vcs.xml)

  • PS。我知道放置所有生成的文件(包括 gradle 文件夹、gradlew 等)可能会解决这个问题,但我不想走这么远。

    提前谢谢大家

    最佳答案

    它应该是一个评论,但它太长了。

    Android Studio 与一个项目一起工作。
    在这个项目中,你可以配置更多的模块,但它需要这个结构:

    Root Project
    |_.idea
    |_.gradle
    |_.config
        |_build.gradle
    |_app_module
        |_build.gradle
    |_lib1_module
        |_build.gradle
    |_lib2_module
        |_build.gradle
    |_ etc.
    |_settings.gradle
    |_build.gradle
    

    在 settings.gradle 中,您必须定义所有模块:
    include ':config' , ':app_module' , ':lib1_module',  ':lib2_module'
    

    在根文件夹下,Android Studio 在使用 gradle 构建项目时,会创建相同的文件夹,如 .idea .

    我读到您无法移动 settings.gradle文件。
    在这种情况下,Android Studio 将 config 文件夹识别为项目的根目录,并在其中构建 .idea 文件夹。
    |_.config (root)
        |_.idea
        |_.gradle
        |_build.gradle
        |_settings.gradle
        |_myModule
    

    Force studio to generate .idea folder and the root project folder without changing location of .gradle files OR



    据我所知,你无法避免这种情况。

    还 ,

    Make studio NOT to re-write it's settings files upon project import


    .idea , .gradle文件夹中,.iml 文件在项目构建时由 IDE 在本地构建。 IDE 会重写这些资源,这些文件也包含本地路径,因此通常不会在 VCS 中提交它们。

    关于android-studio - 使用 Gradle 配置 Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31357849/

    相关文章:

    android - 错误 :Execution failed for task ':agendacalendar:compileDebugJavaWithJavac' . > 编译失败;

    android - Android Studio-如何使用Gradle将资源文件包含在Java包中

    java - 如何将 Wildfly Swarm 的记录器级别配置为 FINEST

    java - 更新了 Android Studio,Logcat 不再在一台 Android 设备上运行,但仍可在我的另一台 Android 设备上运行

    java - 尝试保存在内部位图图片

    Android Studio - 发现不支持的 Gradle DSL 方法 : 'getProguard()

    configuration - 使用配置文件部分覆盖/合并标准编程配置

    java - 如何避免在 Android(或任何 Java)项目中包含未使用的库?

    java - gradle 构建因未知主机异常而失败

    Hadoop、MapReduce : how to add second node to mapReduce?