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
除了這些已進入穩定核心的穩定模組之外,還有許多標記為“試驗(experimental)”的模組。這並不是意味著它們沒有達到預期的功能,它的主要意義是它些模組的API尚不夠穩定。你可以通過郵件列表向我們反饋這些模組的使用情況,幫助加快這一程序。
- akka-contrib – 提交者貢獻的各種模組可能會也可能不被移到核心模組,見外部貢獻瞭解更多細節。
一個實際的JAR檔名如下所示:akka-actor_2.10-2.3.6.jar(其它模組也是如此)。
在依賴關係章節說明了各AKKA模組的JAR之間的依賴關係。
使用釋出版
使用快照版
警告
除非你知道你在做什麼,否則不鼓勵使用AKKA的快照版、每日構建版和里程碑版。
微核心
AKKA的釋出版擁有一個微核心。將你的應用JAR放到deploy目錄並執行bin 目錄下的指令碼。
使用構建工具
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社群的一員。