我正在使用 Android Studio。如何将 RxAndroid 作为子项目包含在我的项目中?我想从源代码构建它。 我试过的: - 将其作为 git 子模块包含在内。 -将其包含在我的项目 settings.gradle 文件中,“包括‘:rxandroid’、‘:app’”
然后我得到:错误:无法找到 Gradle 路径为“:rxandroid”的模块。
编辑
我的文件夹结构如下。
Project
-app
-rxandroid
编辑2
我将文件夹名称从 rxandroid 更改为 RxAndroid。我也更改了项目settings.gradle中的名称,但我仍然得到同样的错误。
最佳答案
根据 http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup它应该只需将 settings.gradle 更改为:
include ':app', ':RxAndroid'
它确实对我有用。我的设置是
- Android Studio 0.8.13
- 从 https://github.com/ReactiveX/RxAndroid 克隆的 RxAndroid
- 我的项目正在使用 com.android.tools.build:gradle:0.12.+
编辑:
我应该提一下,我仍在运行 Gradle 1.12。我在Android Studio中新建了一个空白项目,在settings.gradle中添加了RxAndroid,出现了构建错误:
Error:Cause: startup failed:
Could not instantiate global transform class org.spockframework.compiler.SpockTransform specified at jar:file:/path/spock-core/0.7-groovy-1.8/3a677d19e8d3acf3bd296c4023356256d55da5a3/spock-core-0.7-groovy-1.8.jar!/META-INF/services/org.codehaus.groovy.transform.ASTTransformation because of exception org.spockframework.util.IncompatibleGroovyVersionException: The Spock compiler plugin cannot execute because Spock 0.7.0-groovy-1.8 is not compatible with Groovy 2.3.6. For more information, see http://versioninfo.spockframework.org
Spock location: file:/path/spock-core-0.7-groovy-1.8.jar
Groovy location: file:/path/gradle-2.1/lib/groovy-all-2.3.6.jar
RxAndroid 似乎依赖于 Spock 0.7-groovy-1.8,它不能与 Gradle 2.1 的 Groovy 2.3.6 一起工作。最新的 com.android.tools.build (0.13.x) 需要 Gradle 2.1。
所以我做了以下事情:
- 在顶层 build.gradle(不是应用程序)中,将项目对 com.android.tools.build 的依赖改回 0.12.+
- 将 gradle-wrapper.properties 中的 Gradle 版本改回 1.12
现在项目构建成功。
关于android - 如何在项目中包含 RxAndroid?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26493933/