我想用阿卡演员在爪哇。
我下载了akka-1.0.zip
并添加了akka-actor-1.0.jar
到我在 Eclipse 中的“构建路径”。
然后我写了这个 Actor 类:
package com.example;
import akka.actor.UntypedActor;
public class MyActor extends UntypedActor {
public void onReceive(Object message) throws IllegalArgumentException {
if (message instanceof String) {
System.out.println("Received: " + message);
} else throw new IllegalArgumentException("Unknown message: " + message);
}
}
但我在 Eclipse 中遇到错误:
The type scala.Option cannot be resolved.
The type scala.Some cannot be resolved.
The type scala.PartialFunction cannot be resolved.
The type scala.ScalaObject cannot be resoled.
我是否需要向“构建路径”添加更多文件,或者我做错了什么?我觉得文档没有那么有帮助。
Update:我添加了scala-library.jar
到我的构建路径,上述错误消失了。但是当我编译并运行该应用程序时出现错误:
Exception in thread "main" java.lang.NoClassDefFoundError: net/lag/configgy/ConfigMap
at akka.actor.Actors.actorOf(Actors.java:70)
at com.example.ActorTest.main(ActorTest.java:9)
Caused by: java.lang.ClassNotFoundException: net.lag.configgy.ConfigMap
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
这是我使用演员的主要课程:
package com.example;
import akka.actor.ActorRef;
import akka.actor.Actors;
public class ActorTest {
public static void main(String[] args) {
ActorRef myActor = Actors.actorOf(MyActor.class);
myActor.start();
System.out.println("My Actor started");
}
}
In your akka-1.0.zip
文件有scala-library.jar
。尝试将其添加到构建路径中。
另外,还有一个lib_managed
zip 中的目录,其中包含更多库文件。可能还需要其中一些。
为了避免这种情况,你应该尝试使用 Maven。有一个 Akka 存储库:http://scalablesolutions.se/akka/repository/se/scalablesolutions/akka/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)