如何在Android Studio中添加链接的源文件夹?

时间:2013-09-22 18:27:27

标签: java gradle android-studio

在Eclipse中,我可以将源文件夹添加到我的android项目中作为“链接的源文件夹”。如何在Android Studio中实现相同的功能?

或者是否可以添加外部文件夹来构建gradle?

6 个答案:

答案 0 :(得分:87)

在build.gradle中

将以下内容添加到android节点的末尾

android {
    ....
    ....

    sourceSets {
        main.java.srcDirs += 'src/main/<YOUR DIRECTORY>'
    }

}

答案 1 :(得分:18)

正确的答案是:

android {
    ....
    ....

    sourceSets {
        main.java.srcDirs += 'src/main/<YOUR DIRECTORY>'
    }
}

此外,如果您的外部源目录不在src/main下,您可以使用这样的相对路径:

sourceSets {
    main.java.srcDirs += 'src/main/../../../<YOUR DIRECTORY>'
}

答案 2 :(得分:2)

您可以将源文件夹添加到构建脚本,然后进行同步。在这里的文档中查找sourceSets:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Basic-Project

我还没有找到添加测试源文件夹的好方法。我已手动将源添加到.iml文件中。当然,这意味着每次构建脚本同步时它都会消失。

答案 3 :(得分:2)

虽然sourceSets允许您包含整个目录结构,但是无法在Android Studio(从1.2版开始)中排除部分内容,如下所述:Android Studio Exclude Class from build?

在Android Studio更新为支持Android源的包含/排除指令之前,Symlinks效果很好。如果您使用的是Windows,junctionmklink等原生工具可以完成Un * x符号链接的等效工作。 CygWin也可以用一点点来创造它们。请参阅:Git Symlinks in WindowsHow to make symbolic link with cygwin in Windows 7

答案 4 :(得分:2)

以防任何人感兴趣,这是一个完整的Java模块gradle文件,它可以正确生成并引用构建的文件 在Android多模块应用程序中

ignore.case

答案 5 :(得分:0)

如果您不使用gradle(例如,通过APK创建项目),则可以通过Android Studio用户界面(从3.3.2版开始)进行操作:

  • 右键单击项目的根目录,选择Open Module Settings
  • 点击+ Add Content Root按钮(右中)
  • 添加您的路径并点击OK

根据我的经验(使用本机代码),只要您的.so是使用调试符号构建的并且来自相同的绝对路径,就会自动识别源文件中添加的断点。