依存性:
<?xmlのバージョン= " 1.0 "エンコード= " UTF-8 "?> <プロジェクトのxmlns = " http://maven.apache.org/POM/4.0.0 " のxmlns:XSI = " のhttp://www.w3 .ORG / 2001 / XMLスキーマ・インスタンス" のxsi:のschemaLocation = " http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd 」 > <親> <たartifactId> Seascala </たartifactId> <groupIdを> com.sea </ groupIdを> <バージョン> 1.0 -snapshot </バージョン> </親> <modelVersion> 4.0。0 </ modelVersion> <たartifactId> AkkaDemo </たartifactId> <依存性> <! -スカラ- > < -のhttps:// mvnrepository.com/artifact/org.scala-lang/scala-library - > <依存> <groupIdを> org.scala-LANG </ groupIdを> <たartifactId> Scalaのライブラリ</たartifactId> <バージョン> 2.13。1 </バージョン> </依存関係> <! -配置アッカ俳優依赖- > <依存> <groupIdを> com.typesafe.akka </ groupIdを> <たartifactId>アッカ-actor_2。2.6。3 </バージョン> </依存関係> <! -多进程之间的通信アッカ俳優依赖- > <依存> <groupIdを> com.typesafe.akka </ groupIdを> <たartifactId>アッカ-remote_2。13 </たartifactId> <バージョン> 2.6。3 </バージョン> </依存関係> </依存関係> <ビルド> <! -指定源码位置- > <sourceDirectory>のsrc /メイン/スカラ座</ sourceDirectory> <testSourceDirectory>のsrc /テスト/スカラ座</ testSourceDirectory> </ビルド> </プロジェクト>
デモ:
パッケージcom.sea.f01 輸入akka.actor {俳優、ActorRef、ActorSystem、小道具}。 クラスSayHelloActorは俳優を拡張{ オーバーライドデフ受信:受信= { 場合 " こんにちは" => printlnを(" !您好" ) の場合 、 " XF " =>のprintln(" XF hahhahah!" ) 場合 _ =>のprintln(" 您是?" ) } } オブジェクトSayHelloActorDemo { // 创建一个ActorSystem、俳優のために特別に作成された プライベート(ヴァルactoryFactory = ActorSystem「ActoryFactory 」) // 同時に俳優を作成するには、アクターactorrefへの参照を返す // 説明: // 小道具が[SayHelloActor] SayHelloActorのインスタンスを作成するために使用する反射 // 名前のアクターに「sayHelloActorを」 // sayHelloActorActorRefが小道具です[ sayHelloActor] ActorRef プライベートヴァルsayHelloActorRef:ActorRef = actoryFactory.actorOf(小道具[sayHelloActor]、" sayHelloActor " ) // テスト DEFメイン(引数:配列[文字列]):単位= { // sayHelloActorメッセージ知らせる !sayHelloActorRefを「XF 「 (印刷」を超えます" ) } }