RxJava介绍及如何依赖

2018-09-28  本文已影响7人  CyrusChan

RxJava 是一个ReactiveX 在JVM平台上的实现:通过使用可观察序列来组合异步和基于事件的程序的库

关于更多的信息关于ReactiveX 请看介绍ReactiveX

RxJava是轻量级的

RxJava尝试变的非常轻量级。它被实现为仅仅关注于可观测的抽象的、有关系的高阶函数

的独立jar包。

RxJava是一个多语言的实现

RxJava支持Java6和在它之上的版本和基于JVM的语言例如Groovy,Clojure,jRuby,Kotlin和Scala.

RxJava意味着多语言环境不仅仅是Java/Scala,他被设计为尊重每种基于JVM的习惯用语。

RxJava的库

如下的一些外部库可与RxJava协同工作:

准备开始

获取二进制文件

你可以找到二进制文件和依赖信息通过Maven,Ivy,Gradle,SBT等等在 http://search.maven.org.

Maven:

<dependency>

<groupId>io.reactivex.rxjava2</groupId>

<artifactId>rxjava</artifactId>

<version>2.2.0</version>

</dependency>

Gradle:

compile 'io.reactivex.rxjava2:rxjava:2.2.0'

如果你需要下载Jar包而不是通过编译系统,创建一个如下的带版本的Pom文件:


<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>io.reactivex.rxjava2</groupId>
      <artifactId>rxjava</artifactId>
      <version>2.2.0</version>
      <name>RxJava</name>
      <description>Reactive Extensions for Java</description>
      <url>https://github.com/ReactiveX/RxJava</url>
      <dependencies>
          <dependency>
              <groupId>io.reactivex.rxjava2</groupId>
              <artifactId>rxjava</artifactId>
              <version>2.2.0</version>
          </dependency>
      </dependencies>
</project>

然后执行:

$ mvn -f download-rxjava-pom.xml dependency:copy-dependencies

这个命令下载rxjava-*.jar和它的依赖包 到 ./target/dependency/目录下。

你需要java6或者更高版本。

编译:

拉取和编译RxJava源码,执行如下命令:

$ git clone git@github.com:ReactiveX/RxJava.git
$ cd RxJava/
$ ./gradlew build

执行clean 编译,执行如下命令:

$ ./gradlew clean build

编译过程如下:

$ ./gradlew build
:rxjava:compileJava
:rxjava:processResources UP-TO-DATE
:rxjava:classes
:rxjava:jar
:rxjava:sourcesJar
:rxjava:signArchives SKIPPED
:rxjava:assemble
:rxjava:licenseMain UP-TO-DATE
:rxjava:licenseTest UP-TO-DATE
:rxjava:compileTestJava
:rxjava:processTestResources UP-TO-DATE
:rxjava:testClasses
:rxjava:test
:rxjava:check
:rxjava:build

BUILD SUCCESSFUL

Total time: 30.758 secs

在一个clean 编译过程中,你将会看到单元测试的执行。如下:

> Building > :rxjava:test > 91 tests completed
上一篇 下一篇

猜你喜欢

热点阅读