如何在项目中包含RxAndroid?

时间:2014-10-21 18:41:57

标签: android rx-java

我正在使用Android Studio。如何将RxAndroid作为子项目包含在我的项目中?我想从源代码构建它。 我尝试过的: - 将其作为git子模块包含在内。 - 包括在我的项目settings.gradle文件中,"包括':rxandroid',':app'"

然后我得到:错误:无法找到具有Gradle路径的模块':rxandroid'。

修改

我的文件夹结构如下。

Project
-app
-rxandroid

修改2

我将文件夹名称从rxandroid更改为RxAndroid。我还在项目settings.gradle中更改了名称,但我仍然遇到同样的错误。

1 个答案:

答案 0 :(得分:2)

根据http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup,只需将settings.gradle更改为:

即可
include ':app', ':RxAndroid'

它对我有用。我的设置是

编辑:

我应该提一下,我还在运行Gradle 1.12。我在Android Studio中创建了一个新的空白项目,将RxAndroid添加到了settings.gradle,并出现了构建错误:

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(不是app one)中将项目对com.android.tools.build的依赖性更改回0.12。+
  • 将gradle-wrapper.properties中的Gradle版本更改回1.12

现在项目已成功建成。