我與阿卡嘗試,我已經寫了與主要功能兩個虛擬角色在其中:如何在鄰居演員中編寫兩個主要功能?
HelloActor
package akkaSample.severalSystems
import akka.actor.{Actor, ActorSystem}
class HelloActor extends Actor {
def receive = {
case "mew" => println("I said mew")
case "hello" => println("hello back at you")
case "shutdown" => context.stop(self)
case _ => println("huh?")
}
}
object Main extends App {
val system = ActorSystem("HelloSystem")
println("started")
}
OtherActor
package akkaSample.severalSystems
import akka.actor.{Actor, ActorSystem}
class OtherActor extends Actor {
def receive = {
case "mew" => println("I said mew")
case _ => println("huh?")
}
}
object Main extends App {
val system = ActorSystem("HelloSystem")
println("started")
}
我試圖運行主來自intellij想法(來自OtherActor和HelloActor)的函數並且得到編譯錯誤:
Error:(12, 8) Main is already defined as object Main
object Main extends App {
^
爲什麼我得到它?主要功能放在不同的文件中!如何在Scala/akka中編寫2個主要功能並從鄰居角色運行它們?
與空Scala類,其不也延伸演員主要功能的工作,這裏是代碼:
類一
package akkaSample.mainError
class One {
}
object Main extends App {
println("Hi!")
}
類兩個
package akkaSample.mainError
class Two {
}
object Main extends App {
println("Hi!")
}
沒有編譯錯誤。
P.S.這只是爲了試驗,我不打算在生產中放置2個主要功能的代碼。
我用sbt編譯了代碼,我也收到了與原始scalac相同的錯誤。 'scalac src/main/scala/akkaSample/mainError/One.scala src/main/scala/akkaSample/mainError/Two.scala' – 2014-09-03 09:12:43