|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' _- l' b8 E7 K8 c1 c0 ?
- `4 n3 N. B, T3 E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 S3 H+ W/ J& ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ^9 L) k1 P' Y4 V
swarm.SignatureNotFoundException
6 P$ q, l" B- B at swarm.Selector.<init>(Selector.java:76)) B6 W8 z4 ^1 `0 w2 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), y+ e0 j. k9 n; w
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 T9 x1 b3 W a" h+ |/ M# q& u* a2 `+ z0 E; h6 _! {9 h
4 S4 ^" N; j3 f5 F, j
import swarm.objectbase.SwarmImpl;/ q- N# ~3 T: \
import swarm.objectbase.Swarm;
$ D. K2 a4 o% q9 l3 R G- Oimport swarm.activity.ScheduleImpl;
$ \$ F8 ]9 L/ w- \- o- p8 Kimport swarm.activity.Activity;3 k {" o6 P z% I% p
import swarm.activity.ActionGroupImpl;$ b# A! S: L7 z
import swarm.collections.ListImpl;& e7 D$ B9 o( C+ m# @/ T" U- H5 F, F5 q
import swarm.defobj.Zone;
9 J- A% ]: n' Y8 l3 l1 oimport swarm.Globals;
$ O2 k/ W& i7 T% ?4 J/ Jimport swarm.Selector;
% H/ p6 l% o, d% I+ _import swarm.activity.ActionGroup;
2 L1 I* D% C- I7 }class Agent {6 k9 h0 \5 G' I# P
char id;
6 U$ e( t/ u3 @. V1 s4 N0 i R& B
4 `- d' f0 f' H Agent(char id) {
% P3 Q0 y% I, X6 O% _3 o this.id = id;+ |$ X/ _! b# Q5 J$ T1 D
}
% V( l- ]# H8 c3 k3 r) `* N% b- L# ]" Y9 O, b. z- G
public void agentStep() {8 B7 J6 J6 d$ W! L" a2 w
System.out.println(id + ":" + Globals.env.getCurrentTime());
% b3 h% H% Y! }# k. ~ }) s# a" N1 t$ N1 L$ x) L) {) V& x
}
0 l2 ~: p2 g% b; E) {2 D8 ]* B0 \9 Z/ }
public class ActionGroupDemo extends SwarmImpl {$ }. i0 ^" Z$ s6 g
ScheduleImpl schedule;, V" q* e% j! j) P4 Z( O
ActionGroupImpl actionGroup;
% }4 i4 T- q7 I/ R ListImpl list;) B7 D/ q! V% i' _
char Id = 'a';
7 x7 r0 I3 m! C! ]5 j. s
2 ^) ^' s4 X4 n, B0 a5 R, D2 } ActionGroupDemo(Zone aZone) {
?4 ?) h, n; ?& h4 F: o# |! @ super(aZone);5 {7 [+ j' S/ a; d8 ~. a: Z
list = new ListImpl(aZone);
0 i9 q4 A h1 _! s1 F, }8 p swarmSetp();8 e: }* \5 c0 e1 ~# W/ h
actionGroup = new ActionGroupImpl(aZone);
; @2 {$ O1 f! p z& s2 I. t schedule = new ScheduleImpl(aZone);
- }, g) t4 n3 J2 P |" v try {, }# W9 f1 T4 X% t+ {, ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 e! z+ o- o E& D4 j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, ]7 P4 m0 m9 C
) f$ f6 k! B: X$ h1 k) O" M
actionGroup.createActionForEach$message(list, agentSel);
! D( o5 R% _% Z5 {# [" J$ u actionGroup.createActionTo$message(this, swarmSel);
- k$ _8 ~% [; i5 b schedule.at$createAction(0, actionGroup);) e d2 Q8 T9 q8 k+ w, B0 H
schedule.at$createAction(1, actionGroup);
# a! m. t% X1 k: V7 J8 Z schedule.at$createAction(2, actionGroup);
3 t* P: y1 A* S$ \, x% b$ s: g6 T* s% w/ @3 F' u# T
} catch (Exception e) {/ Q$ U6 R' g0 K8 p
e.printStackTrace(System.err);
# ?. N- H" J" h- h" l //System.out.println(e);
& f2 m% f, a. W6 Y1 U System.exit(1);/ {: J) Y7 {6 R( }3 Y
}
9 p1 w! J6 }; ]7 ^! e7 o4 m# ?6 q2 P# }6 R8 v
. r9 N X1 ~0 t1 v6 ~, Y4 [. {5 c
}
h0 ?9 Z! h/ x& Z6 y9 n$ V: F: @( V" C+ j6 A( P* \5 ^1 R+ y0 ~
private void swarmSetp() {
/ C) Y/ F7 V( B8 j list.addLast(new Agent(Id)); [2 t8 i- b r' n* g
Id++;5 [/ i r+ R3 V3 o* i
}8 d+ {1 {2 T& `9 A" ]
% f0 `# r) a* l5 q3 l6 ~/ z public Activity activateIn(Swarm context) {
, v7 n3 m3 t; [6 ^4 ?: D; ~* h super.activateIn(context);9 @/ Z9 @/ Y/ N
schedule.activateIn(this);
: y9 A$ w9 h6 k9 `4 D return getActivity();: P. m. i' l# y/ W+ c3 v6 M
}% ^( l. m, T; J( G- M- \2 H
8 H: |0 y0 f& t* t) W
public static void main(String[] args) {
- r, ~9 }/ c' Y. S0 M' d Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% [7 w) C% J/ o1 \% c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 W- w8 d2 B4 L% O
swarms.buildObjects();3 ^8 `8 H3 v; B1 g& T3 \
swarms.buildActions();
1 p0 C; L6 c# z% H swarms.activateIn(null).run();- E- _9 W) l: J: Z* D/ X0 E- f5 E- F
}
9 P; X9 m2 I; S2 C' s0 J' y0 a" r2 F' f
} |
|