RxJava介绍及如何依赖

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

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

RxJava是轻量级的

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

的独立jar包。

RxJava是一个多语言的实现

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

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

RxJava的库

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

  • Hystrix latency and fault tolerance bulkheading library.
  • Camel RX provides an easy way to reuse any of the Apache Camel components, protocols, transports and data formats with the RxJava API
  • rxjava-http-tail allows you to follow logs over HTTP, like tail -f
  • mod-rxvertx - Extension for VertX that provides support for Reactive Extensions (RX) using the RxJava library
  • rxjava-jdbc - use RxJava with jdbc connections to stream ResultSets and do functional composition of statements
  • rtree - immutable in-memory R-tree and R*-tree with RxJava api including backpressure

准备开始

获取二进制文件

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

Maven:



io.reactivex.rxjava2

rxjava

2.2.0


Gradle:

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

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




      4.0.0
      io.reactivex.rxjava2
      rxjava
      2.2.0
      RxJava
      Reactive Extensions for Java
      https://github.com/ReactiveX/RxJava
      
          
              io.reactivex.rxjava2
              rxjava
              2.2.0
          
      

然后执行:

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

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

你需要java6或者更高版本。

编译:

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

$ git clone [email protected]: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

你可能感兴趣的:(RxJava介绍及如何依赖)