使用 Android 工具项目构建系统时遇到问题
Posted
技术标签:
【中文标题】使用 Android 工具项目构建系统时遇到问题【英文标题】:Having problems using the Android Tools Project Build System 【发布时间】:2012-12-06 07:51:27 【问题描述】:所以我一直在尝试使用 http://tools.android.com/tech-docs/new-build-system 自动构建 Android。
我仍然不清楚如何准确地使用构建系统,所以如果有人对此有经验,或者一般的 Gradle 可能能够为我回答以下问题。
将此构建文件用作参考。
//
// A basic Android application that follows all the conventions
//
buildscript
repositories
mavenCentral()
dependencies
classpath 'com.android.tools.build:gradle:0.2'
apply plugin: 'android'
android
target = "android-15"
testBuildType = "debug"
defaultConfig
versionCode = 12
versionName = "2.0"
minSdkVersion = 16
targetSdkVersion = 16
signingStoreLocation = "debug.keystore"
signingStorePassword = "android"
signingKeyAlias = "androiddebugkey"
signingKeyPassword = "android"
buildConfig "private final static boolean DEFAULT = true;", \
"private final static String FOO = \"foo\";"
buildTypes
debug
packageNameSuffix = ".debug"
buildConfig "private final static boolean DEBUG2 = false;"
sourceSets
main
test
aaptOptions
noCompress "txt"
-
您究竟是如何向它添加依赖项以进行构建的?使用 Gradle 的依赖项会给我带来构建错误。
您将如何创建不同的构建环境?然后从命令行运行这些?
在 main 和 test 之外的 sourceSets 有什么意义?
感谢您的帮助,我们将不胜感激除上述问题之外的任何一般指南。
【问题讨论】:
另外,如果其他人可能会建议一个完全不同的 Android 构建系统,并期望它具有简单快速的学习曲线,那就太好了。 Ant 并没有真正内置依赖管理或自动化测试。希望将其纳入框架。 您遇到了什么错误? 我不确定您是否可以使用空块来配置 sourceSets.main 和 sourceSets.test。如果您使用的是默认文件夹结构(src/main/java 和 src/test/java),我会删除它们,看看是否有帮助。 【参考方案1】:1- 依赖是通过常规的 gradle 方式添加的,例如:
依赖 编译'com.google.android:support-v4:r7'
更多信息:http://gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
2- 不知道你的意思。如果您指的是不同的构建变体,则必须创建产品风味(请参阅http://tools.android.com/tech-docs/new-build-system/using-the-new-build-system)。
从命令行构建,您只需运行“gradle assemble”。请参阅上面的文档。
3- SourceSets 用于配置默认配置(main/test)、flavors 和构建类型的源集。与 Java gradle 构建不同,您不能只添加新的源集并让它们自动编译。 这就是为什么它位于 android 命名空间 (android.sourcesets) 中,而不是像默认 Java 插件提供的 sourceSets 对象那样位于顶层。
【讨论】:
到目前为止,我已经搁置了使用该工具并正在探索使用 android maven 插件,因为我发现指南超级缺乏。来自非运营背景,并使用 Eclipse 或 Intellij 构建我的 Android 应用程序,我发现现在这太难理解了。以上是关于使用 Android 工具项目构建系统时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章
使用 Jenkins 构建 Android 项目时出现问题(未找到任务)
Android Gradle 插件Gradle 构建工具简介 ② ( Android 项目构建打包流程 | 构建工具发展 -> 手动配置 -> Ant -> Maven -> Gradle )