Akka要求你机器上安装了 Java 8或更高版本。
学习Akka的最好方法是下载Typesafe Activator并且尝试一下其中的Akka模板项目。
下载Akka有几种方法。你可以下载Typesafe平台来下载Akka(如前所述)。你可以下载包含所有模块的完整发布包。或者也可以使用构建工具如Maven或SBT从Akka Maven仓库下载依赖。
Akka是非常模块化的,它由几个包含不同功能的Jar包组成。
akka-actor
– 标准Actor, 类型Actor,IO Actor等。akka-agent
– Agent,与 Scala STM 集成akka-camel
– Apache Camel 集成akka-cluster
– 集群成员管理,弹性路由器。akka-osgi
– 在OSGi容器中使用Akka的基本工具akka-osgi-aries
– 配置actor系统的Aries蓝图akka-remote
– 远程Actorakka-slf4j
– SLF4J日志(事件总线监听器)akka-testkit
– Actor系统的测试工具包除了这些稳定的模块之外,还有一些虽然趋于稳定但仍然被标记为“实验”的模块。这并不是说他们的功能不符合预期,而主要的意思是他们的API还没有足够稳定到被认为已经固定了。你可以通过在我们的邮件组里进行反馈,来加速试验模块发布的进程。
akka-contrib
– 一系列的Akka贡献,他们有可能被加入核心模块中,详情见外部贡献。实际的JAR包文件名会加上版本号,如 akka-actor_2.11-2.4-M2.jar
(对其他模块也是类似)。
查看Akka模块之间的JAR依赖的详情在依赖这一节中。
从http://akka.io/downloads下载发布包并解压。
Akka的每日快照发布在 http://repo.akka.io/snapshots/, 版本号中包含 SNAPSHOT
和时间戳。你可以选择一个时间戳的版本,可以决定何时升级到一个新的版本。
警告
不鼓励直接使用Akka快照版(SNAPSHOT)、每日构建版(nightly)和里程碑版(milestone),除非你知道自己在做什么。
Akka可使用支持Maven仓库的构建工具。
对Akka 2.1-M2 及以后的版本:
对以前的Akka 版本:
通过Maven使用Akka的最简单的入门方法,是检出Typesafe Activator中的教程,叫Akka Main in Java。
由于Akka已经发布到Maven中心仓库了(自2.1-M2版本起),所以直接在POM文件中加入Akka依赖即可。例如。这是akka-actor的依赖:
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-actor_2.11</artifactId>
<version>2.4-M2</version>
</dependency>
注意:对于快照版本,SNAPSHOT和时间戳都在版本号中。
<repositories>
<repository>
<id>akka-snapshots</id>
<snapshots>
<enabled>true</enabled>
</snapshots>
<url>http://repo.akka.io/snapshots/</url>
</repository>
</repositories>
通过SBT使用Akka的最简单的入门方法,是检出Akka/SBT template项目。
通过SBT使用Akka的要点:
SBT安装指导在 https://github.com/harrah/xsbt/wiki/Setup
build.sbt
文件:
name := "My Project"
version := "1.0"
scalaVersion := "2.11.6"
libraryDependencies +=
"com.typesafe.akka" %% "akka-actor" % "2.4-M2"
注意:以上的libraryDependencies
设置需要SBT 0.12.x或更高的版本。如果你使用更老版本的SBT,libraryDependencies
需要这样设置:
libraryDependencies +=
"com.typesafe.akka" % "akka-actor_2.11" % "2.4-M2"
需要 Gradle 1.4 及以上的版本来使用 Scala 插件
apply plugin: 'scala'
repositories {
mavenCentral()
}
dependencies {
compile 'org.scala-lang:scala-library:2.11.6'
}
tasks.withType(ScalaCompile) {
scalaCompileOptions.useAnt = false
}
dependencies {
compile group: 'com.typesafe.akka', name: 'akka-actor_2.11', version: '2.4-M2'
compile group: 'org.scala-lang', name: 'scala-library', version: '2.11.6'
}
对于快照版本,快照仓库要添加:
repositories {
mavenCentral()
maven {
url "http://repo.akka.io/snapshots/"
}
}
设置SBT项目然后使用 sbteclipse 来生成Eclipse项目。
设置SBT项目然后使用 sbt-idea 来生成IntelliJ IDEA 项目。
设置SBT项目然后使用 nbsbt 来生成NetBeans项目。
你应当也使用nbscala来生成IDE的scala支持。
警告
Akka并没有在scala编译器的
-optimize
标志下编译和测试过。尝试过这种方式的用户报告了Akka的奇怪行为。
Akka使用Git并托管在 Github。
具体请参考 构建Akka。
如果有问题,你可以在 Akka Mailing List 获得帮助。
也可以寻求 商业支持。
感谢你成为Akka社区的一部分。