我正在尝试建立一个使用 gradle 构建的项目,我之前没有使用过它,所以我拼凑了我在 android 工具上阅读的内容。我只想能够通过 Main 应用程序及其所有依赖项构建项目。
当我尝试从应用程序构建并编译依赖项时,出现异常: * 出了什么问题:/Users/seren/Dropbox/codes/androids/mixcloud-work/android/Android/mixcloud/app/src/main 中缺少主清单/AndroidManifest.xml
但是,如果我取出其他模块的依赖行,它将开始编译,直到它不可避免地失败:compile project(':actionbarsherlock')
编辑 - 所以我做了一个由两个模块组成的测试项目。如果我从平面层次结构开始,我会得到描述的问题。但是,如果我随后将子模块移动到主应用程序模块中,则项目构建没有问题。不过,我想保持扁平的层次结构。
我的项目结构是:
主应用 ActionBarSherlock Facebook SDK Utils - 仅限 java
所以我在每个项目目录下建立了一个build.gradle文件如下:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.3'
}
}
apply plugin: 'android'
dependencies {
compile files (
'../../libs/android-support-v4.jar',
)
}
android {
compileSdkVersion 17
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aild.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
}
}
然后像 utils 这样对模块有更多依赖的东西:
dependencies {
compile files (
'libs/android-support-v4.jar',
'libs/gson-2.2.2jar',
)
compile project(':facebook')
compile project(':actionbarsherlock')
}