私は Akka を初めて使用し、application.conf
ファイルをロードするのに問題があります。以下で構成される比較的単純な conf ファイルを定義しました。
akka {
logLevel = "NONE"
stdout-logLevel = "NONE"
}
私が理解していることから、これは自動的に取得されるはずです(src/main/resources
ディレクトリに配置されています)。ただし、デフォルトのロガーをロードして "INFO" ( greeting を実行) メッセージを出力すると、まだコンソールに表示されます (次のコードを参照)。
import akka.actor.{ActorRef, Actor, Props}
import akka.event.Logging
object HelloWorldActor {
case object Tick
}
class HelloWorldActor extends Actor {
val logger = Logging(context.system, this)
var greeter : Option[ActorRef] = None
override def preStart() = {
greeter = Some(context.actorOf(Props[Greeter], "greeter"))
}
def doGreet(): Unit = {
logger.info("doing greet")
greeter match {
case Some(g) => g ! Greeter.Greet
}
}
def receive: Actor.Receive = {
case HelloWorldActor.Tick => this.doGreet()
}
}
私が考えることができる唯一のことは、カーネルをスタンドアロンモードで実行するように定義したことであり、構成をロードするためにそこで何か特別なことをしなければならないかどうかはわかりません。
私がやっていることをよりよく調べるために、プロジェクトを GitHub にアップしました: https://github.com/JohnMurray/hello-akka
私は現在Akka初心者なので、どんな助けも大歓迎です。また、オンラインで構成ドキュメントを読んだことを言及する必要がありますが、この特定のケースでは役に立ちませんでした。
ありがとう!