안녕하세요 저는 scala와 akka에 익숙하지 않습니다.이 예제 프로그램을 intellij에서 사용하려고합니다. 불행히도 그것은 작동하지 않습니다. 나는 그것이 작동하지 않는 이유를 모르지만 나는 또한 intellij에 익숙하지 않다. 그리고 나는 그것이로드 된 라이브러리에 문제가 될 수 있다고 생각한다. 어쨌든 여기에 코드가 있습니다.스케이팅 예제 클래스에서 클래스를 해결할 수 없습니다.
package test
import akka.actor.{Actor, ActorLogging}
class Printer extends Actor with ActorLogging{
import Printer._
def receive={
case Greeting(greeting)=>
log.info(s"Greeting received (from ${sender()}): $greeting")
}
}
지금 Greeter 클래스를 제공 :
package test
import akka.actor.{Actor, ActorLogging, ActorRef, Props}
class Greeter(message: String, printerActor: ActorRef) extends Actor with
ActorLogging {
import Greeter._
import Printer._
var greeting = ""
def receive = {
case WhoToGreet(who) =>
greeting = s"$message, $who"
case Greet =>
printerActor ! Greeting(greeting)
}
}
그리고 지금 주 :
package test
import akka.actor.{ActorRef, ActorSystem}
import scala.io.StdIn
object main extends App {
import Greeter._
// Create the 'helloAkka' actor system
val system: ActorSystem = ActorSystem("helloAkka")
try {
// Create the printer actor
val printer: ActorRef = system.actorOf(Printer.props, "printerActor")
// Create the 'greeter' actors
val howdyGreeter: ActorRef =
system.actorOf(Greeter.props("Howdy", printer), "howdyGreeter")
// Send messages
howdyGreeter ! WhoToGreet("Akka")
howdyGreeter ! Greet
println(">>> Press ENTER to exit <<<")
StdIn.readLine()
} finally {
system.terminate()
}
}
내가 몇 가지 "확인할 수 없습니다"오류가있어이 프린터 클래스입니다. 우선, 프린터 및 Greeter (가져 오기 Greeter._/Printer._)에 가져 오기 명령문이 필요한 이유는 해결되지 않는 것과 같이 표시되어 있기 때문입니다. 또한 모든 프린터 또는 Greeter는 해결할 수없는 것으로 표시됩니다.
C:\Users\olive\IdeaProjects\akkat\src\test\scala\test\Greeter.scala
Error:(4, 10) not found: value Greeter
import Greeter._
Error:(5, 10) not found: value Printer
import Printer._
Error:(8, 10) not found: value WhoToGreet
case WhoToGreet(who) =>
Error:(10, 10) not found: value Greet
case Greet =>
Error:(11, 22) not found: value Greeting
printerActor ! Greeting(greeting)
C:\Users\olive\IdeaProjects\akkat\src\test\scala\test\Printer.scala
Error:(6, 10) not found: value Printer
import Printer._
Error:(9, 10) not found: value Greeting
case Greeting(greeting)=>
C:\Users\olive\IdeaProjects\akkat\src\test\scala\test\main.scala
Error:(5, 10) not found: value Greeter
import Greeter._
Error:(10, 44) not found: value Printer
val printer: ActorRef = system.actorOf(Printer.props, "printerActor")
Error:(13, 20) not found: value Greeter
system.actorOf(Greeter.props("Howdy", printer), "howdyGreeter")
Error:(15, 20) not found: value WhoToGreet
howdyGreeter ! WhoToGreet("Akka")
Error:(16, 20) not found: value Greet
howdyGreeter ! Greet
이 내가 당신은 스칼라 클래스에 관련된 도우미 개체를 만들 필요가 libaries
WhoToGreet 및 Greet의 사례 클래스는 어디에 있습니까? –