1. 程式人生 > >AKKA文件(java版)——準備開始

AKKA文件(java版)——準備開始

預備知識

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之間的依賴關係。

使用釋出版

使用快照版

警告

除非你知道你在做什麼,否則不鼓勵使用AKKA的快照版、每日構建版和里程碑版。

微核心

AKKA的釋出版擁有一個微核心。將你的應用JAR放到deploy目錄並執行bin 目錄下的指令碼。

更多資訊請見微核心(Scala)|(Java

使用構建工具

AKKA可以使用支援Maven倉庫的構建工具

Maven倉庫

從AKKA2.1-M2版開始:

之前的版本:

通過Maven使用AKKA

既然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

SBT中的AKKA的必要部分:

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

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社群的一員。