以下是从http://doc.akka.io/docs/akka/2.2.3/AkkaScala.pdf
中获取的代码import akka.actor.Actor
object Greeter {
case object Greet
case object Done
}
class Greeter extends Actor {
def receive = {
case Greeter.Greet =>
println("Hello World!")
sender ! Greeter.Done
}
}
在其中,它说:
如何在Eclipse中独立运行它?
我尝试创建一个新的Run配置,将com.example.HelloWorld设置为主类,程序参数为akka.Main但我收到“main class not found”异常。
更新:
根据TheTerribleSwiftTomato的回答,我有
但我收到以下错误:
Exception in thread "main" java.lang.ClassNotFoundException: com.example.HelloWorld
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at akka.actor.ReflectiveDynamicAccess$$anonfun$getClassFor$1.apply(DynamicAccess.scala:67)
at akka.actor.ReflectiveDynamicAccess$$anonfun$getClassFor$1.apply(DynamicAccess.scala:66)
at scala.util.Try$.apply(Try.scala:161)
at akka.actor.ReflectiveDynamicAccess.getClassFor(DynamicAccess.scala:66)
at akka.Main$.main(Main.scala:32)
at akka.Main.main(Main.scala)
我已经添加了akka Maven依赖项,还有其他我缺少的东西吗?
答案 0 :(得分:1)
akka.Main
不是参数,它是启动器类(即包含main
方法的启动器)。在这种情况下,如文档中所述,它将设置ActorSystem
实例和其他必要的基础结构。
所以,在Eclipse中,你会:
akka.Main
到 Main class 字段和com.example.HelloWorld
作为唯一参数。重新编辑:我看到两个问题:
HelloWorld
class from the example。你还记得加入你的项目吗?HelloWorld
类也会出现轻微错误。它缺少包装声明: package com.example
纠正(将其移至正确的包裹),您应该开始编写Actor系统。