我要将我的 Android 项目从 Ant 转换为 Gradle。
我的 Eclipse 工作区非常简单:
Workspace
MyApp
MyApp-AndroidLibrary
当我在 MyApp 中添加 build.gradle 文件时,我想引用我的 Android 库项目:
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':MyApp-AndroidLibrary')
}
当我运行 gradle build 时,出现错误“在根项目中找不到路径为 ':MyApp-AndroidLibrary' 的项目”,我用 google 搜索了此内容,发现我需要在工作区中设置一个“settings.gradle”文件目录,添加
include ":MyApp"
include ":MyApp-AndroidLibrary"
这对我来说太糟糕了,为什么 Gradle 需要一个 settings.gradle 文件,为什么不直接提取我在依赖项中定义的项目呢?
还有什么include
真正意思?如果我在工作区中有另一个应用程序和其他一些共享库,结构可能如下所示:
Workspace
App1
App2
Library1(Used by App1 & App2)
Library2(Used only by App1)
Library3(Used only by App2)
因为只有一个 settings.gradle 文件,所以我必须将它们全部添加到 settings.gradle 中。那味道不太好闻。
是的,我可以重新组织结构,使 Library2 成为 App1 的子目录,使 Library 3 成为 App2 的子目录,但是 Library1 呢?
对此有何评论?