Akka Java 中文文档 -- Akka入门

原文:http://doc.akka.io/docs/akka/2.3.6/intro/getting-started.html  译者:吴京润

预备知识

AKKA要求你的计算机已经安装了Java1.6或更高版本。

入门指南与模板项目

学习AKKA的最好方式是下载Typesafe Activator并尝试一个AKKA模板项目。

下载

有许多种下载AKKA的方式。你可以把它当作Typesafe平台的一部分下载(就像上面描述的)。还可以下载完全发布版,它包含微内核以及所有模块。或者使用像Maven或SBT这样的构建工具从AKKA Maven仓库下载依赖。

模块

AKKA是调度模块化的,它由许多拥有不同特性的JAR组成。

  • akka-actor – 经典角色、类型角色、IO角色等。
  • akka-agent – 代理、整合了Scala的STM特性
  • akka-camel – 整合Apache的Camel
  • akka-cluster – 集群成员管理、弹性路由
  • akka-kernel – AKKA微内核,运行着一个极简应用服务器
  • akka-osgi – 在OSG容器里使用AKKA的基本bundle,包括akka-actor的类
  • akka-osgi-aries – Aries——服务提供角色系统的蓝图
  • akka-remote – 远程角色
  • akka-slf4j – SLF4J Logger (事件总线监听器)
  • akka-testkit – 测试角色系统的工具包Toolkit for testing Actor systems
  • akka-zeromq – 整合ZeroMQ

除了这些已进入稳定内核的稳定模块之外,还有许多标记为“试验(experimental)”的模块。这并不是意味着它们没有达到预期的功能,它的主要意义是它些模块的API尚不够稳定。你可以通过邮件列表向我们反馈这些模块的使用情况,帮助加快这一进程。

  • akka-contrib – 提交者贡献的各种模块可能会也可能不被移到核心模块,见外部贡献了解更多细节。

一个实际的JAR文件名如下所示:akka-actor_2.10-2.3.6.jar(其它模块也是如此)。

依赖关系章节说明了各AKKA模块的JAR之间的依赖关系。

使用发布版

 http://akka.io/downloads下载你需要的发布版并解压缩。

使用快照版

每日构建的AKKA快照版发布在http://repo.akka.io/snapshots/,并同时以SNAPSHOT和时间戳标记版本。你可以选择使用一个时间戳标记的版本并决定何时升级到一个更新版本。AKKA快照仓库还通过http://repo.typesafe.com/typesafe/snapshots/代理了AKKA模块依赖的许多其它仓库的代理。

警告

除非你知道你在做什么,否则不鼓励使用AKKA的快照版、每日构建版和里程碑版。

微内核

AKKA的发布版拥有一个微内核。将你的应用JAR放到deploy目录并运行bin 目录下的脚本。

更多信息请见微内核(Scala)|(Java

使用构建工具

AKKA可以使用支持Maven仓库的构建工具

Maven仓库

从AKKA2.1-M2版开始:

Maven中央仓库

之前的版本:

AKKA仓库 Typesafe仓库

通过Maven使用AKKA

开始使用AKKA和Maven的最简单的方式是检出Typesafe Activator名为Akka Main in Java的教程。

既然AKKA发布到了Maven中央仓库(从v2.1-M2开始),当然可以通过POM添加AKKA依赖。比如下面就是akka-actor模块的依赖

<dependency>
    <groupId>com.typesafe.akka</groupId>
    <artifactId>akka-actor_2.10</artifactId>
    <version>2.3.6</version>
</dependency>

注意:对于快照版,SNAPSHOT 与时间戳版本同时发布。

通过SBT使用AKKA

最简单的方法是检出Akka/SBT template工程。

SBT中的AKKA的必要部分:

SBT安装指南:https://github.com/harrah/xsbt/wiki/Setup

build.sbt文件:

</pre>
<pre>name:="My Project"
version:="1.0"
scalaVersion:="2.10.4"
resolvers+="Typesafe Repository" at "http://typesafe.com/typesafe/releases/"
libraryDependencies+="com.typesafe.akka" %% "akka-actor" % "2.3.6"

注意:在上面的libraryDependencies设置中,指定SBT版本为v0.12.x或更高版本。如果你使用较早的SBT版本,libraryDependencies应像下面这样:

libraryDependencies+="com.typesafe.akka" %% "akka-actor_2.10" % "2.3.6"

通过Gradle使用AKKA

要求至少是Gradle1.4以上,包含Scala插件

apply plugin:'scala'
repositories {
    mavenCentral()
}
dependencies {
    compile 'or.scala-lang:scala-library:2.10.4'
}
tasks.withType(ScalaCompile) {
    scalaCompileOptions.useAnt=false
}
dependencies {
    compile group: 'com.typesafe.akka', name: 'akka-actor_2.10', version: '2.3.6'
    compile group: 'org.scala-lang', name: 'scala-library', version: '2.10.4'
}

在Eclipse中使用AKKA

安装SBT工程然后使用sbteclipse生成Eclipse工程。

在IntelliJ IDEA中使用AKKA

安装SBT工程然后使用 sbt-idea生成IntelliJ IDEA工程。

在NetBeans中使用AKKA

安装SBT工程然后使用 nbsbt 生成NetBeans工程。

你同样应该为IDE对scala的通用支持使用 nbsbt 。

不要使用Scala编译器优化选项 -optimize

警告

从没有使用Scala编译器的-optimize选项编译或测试过akka。有尝试过的用户报告使用该选项发生了奇怪的行为。

从源码构建

Akka使用Git托管在Github上。

更多内容参考构建Akka

需要帮助?

如果你有问题可以从Akka邮件列表获得帮助。

你也可以获取商业支持

感谢您成为AKKA社区的一员。

 

 译者注:本人正在翻译AKKA官网文档,本篇是文档第一章,欢迎有兴趣的同学加入一起翻译。更多内容请读这里:https://tower.im/projects/ac49db18a6a24ae4b340a5fa22d930dc/todos/640e53d6e8c149ab95c47cd333b91073/ 

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: AKKA文档(java版)——准备开始

posted @ 2016-11-14 18:15  sanshizi  阅读(17930)  评论(1编辑  收藏  举报