|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% f0 D% F9 V! P& n5 w! C% X# H$ B, a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, b; c( b3 N1 [9 g+ [( b1 P% O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ U8 H" m3 {; M& M6 ?' v) _swarm.SignatureNotFoundException
?! B( i1 \( ?6 c$ ]6 J8 j at swarm.Selector.<init>(Selector.java:76), ]+ P: Q& @2 @, f& F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' g1 u" Z- A3 J) o at ActionGroupDemo.main(ActionGroupDemo.java:67)5 T+ h7 f7 k( `# S" E4 d6 j
1 b4 e( j2 H* }. v! Z+ Q7 k x" C3 w/ q6 H" u
import swarm.objectbase.SwarmImpl;
5 D; f* b2 P) d8 m" simport swarm.objectbase.Swarm;
$ M4 r& Y# _4 jimport swarm.activity.ScheduleImpl;: o# D2 @1 i3 c: I# R" Y! D4 c* u
import swarm.activity.Activity;0 U7 }) U! ?* ?( l6 N9 }4 b; U
import swarm.activity.ActionGroupImpl;
' x# @6 F- @9 ^import swarm.collections.ListImpl;
# z0 p! a% O Z. limport swarm.defobj.Zone; 2 K5 B7 J. \% { {
import swarm.Globals;
. `& E, K- U* W) Kimport swarm.Selector;/ e* ~& \3 d% v5 j7 k7 ]
import swarm.activity.ActionGroup; 9 I" _$ A5 S! ~4 r. ^! |
class Agent {+ X' o) S# l: W5 m
char id;& p. U8 h/ N& r
* v" q o" J. Z! U# a) t8 I Agent(char id) {
* _8 i# c* |' ?' X9 Z: ? a4 T- W+ d this.id = id;
8 \. u# _. G1 R9 B }
- h8 ?3 a5 |% u' M! d' Z- A' y3 I$ ^8 ? `( q$ ^6 [
public void agentStep() {
& u1 ]. O! P. c System.out.println(id + ":" + Globals.env.getCurrentTime());
$ d+ h( w0 N1 [3 I1 o8 i7 T- }/ L }1 f9 V p* V6 Y2 P: b* O
}5 G" C9 u' m2 ?+ y) w
' y+ j3 t1 v l7 npublic class ActionGroupDemo extends SwarmImpl {
( ~9 S3 q. J! c: i& S7 M* } ScheduleImpl schedule;* ~: J8 e, e5 O+ t( x3 b
ActionGroupImpl actionGroup; X, Q% I/ O! E& E, a2 b
ListImpl list;
; i, \! B, \' [- Y7 e: V char Id = 'a';* D' B! A; t7 s, I* m1 q0 @6 `0 E" i
m D2 x3 p6 v% \$ v4 B
ActionGroupDemo(Zone aZone) {
% c" D1 y _0 R3 T1 `/ o: R super(aZone);
& r% Y6 X M6 ?# T. ]$ M+ u; c, W list = new ListImpl(aZone);( x; \6 `: Q8 Y! b3 ~
swarmSetp();8 N0 B& @! k0 G1 z" H6 e
actionGroup = new ActionGroupImpl(aZone); n& f# N2 x, E: Q2 \: b# @2 J0 ~
schedule = new ScheduleImpl(aZone);0 j; j1 x0 U$ W# A" I! {4 _
try {
& {$ T1 X `5 G$ C& d" P Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 w" U0 Z" z2 |0 S3 [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, I/ u' f6 G/ h
# N. `) \# H/ W' X% D8 s! b actionGroup.createActionForEach$message(list, agentSel);! Q* L6 Y/ q0 E" i
actionGroup.createActionTo$message(this, swarmSel);6 H$ _: m3 a) E+ B3 P3 p! ~. \
schedule.at$createAction(0, actionGroup);
6 s& X b4 Q+ }1 ^) W schedule.at$createAction(1, actionGroup);
" j1 `$ v1 N. ]2 y schedule.at$createAction(2, actionGroup);. x: h1 m9 K6 K, O
. K6 w# c- A9 }, t" n5 J( u1 A; U } catch (Exception e) {
+ K% L2 n& Q5 \0 ^6 v' h e.printStackTrace(System.err);+ O! S! E: b1 u/ q) Y" ?0 A8 `! N
//System.out.println(e); G0 i2 H$ U! E4 I/ J4 S( ]2 Q* \3 V
System.exit(1);
; y, t' ?3 p3 C, T% q% t# k }
6 |( f3 k8 ?4 X; c, S
7 r+ i' K8 G3 e/ K" _% O+ ~: q/ R7 e
}/ |3 X. k" C3 i* }
' v" e9 g0 v# a) f( u L n
private void swarmSetp() {
8 \% `$ p0 b9 f" V list.addLast(new Agent(Id)); U' W/ a0 c# D- r3 x# R
Id++;# f; |8 y! h( ~& `1 L a
}. o( Z* k; `. H: X
/ X; a$ u, R$ M$ J- T* n& v public Activity activateIn(Swarm context) {
" l& p. T S" d2 R super.activateIn(context);
$ e. a; q! T W* m( a schedule.activateIn(this);) i- l2 D+ A' [
return getActivity();8 X" |' s2 c, g9 d. @
}
3 X8 b" _1 U7 O4 e' b
2 l0 b/ N# F9 ]+ I2 V public static void main(String[] args) {; f& S% K0 V/ y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 e9 j- |& d! ^: |7 e P! V# C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: @( x" g4 j0 [9 ]$ x0 t) U' ?4 b swarms.buildObjects();( M+ @$ r. I' X0 T: ^5 M
swarms.buildActions();$ ^+ D+ g2 k. R/ X) [1 o) I, [* } K" y
swarms.activateIn(null).run();( D7 f6 G9 D5 k
}
& a5 z; N0 k3 ]. C
; u: C' e! `' L& Q% I} |
|