|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ C' l- a3 C0 M5 C: G: |% R/ e9 E4 U# G P% K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
@) t# T' y6 C) f. E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ a! ]" U0 _! {; M( Q. Q3 G
swarm.SignatureNotFoundException: h- R- @/ r8 `; p1 z( \( i
at swarm.Selector.<init>(Selector.java:76)
1 K2 V+ m ]6 {6 ]& O7 t7 p7 Y, Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 g5 C# Y+ I+ @, e5 O9 [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
% m: z1 X5 l) ~1 B7 s4 x# T9 z7 o: U. M6 i3 z1 J
7 y: a1 X: S8 Y b/ y; k* j
import swarm.objectbase.SwarmImpl;
! A' o7 b% Y3 \import swarm.objectbase.Swarm; z/ n( b J/ B5 H- d5 e, T3 j6 ~% p
import swarm.activity.ScheduleImpl;
5 e' m( x- i' [7 H! o3 \) |0 H- O& m, Simport swarm.activity.Activity; t2 Y4 }" b) Z6 i( B+ \
import swarm.activity.ActionGroupImpl;+ U0 [3 e' w% L2 y/ ]+ h/ E
import swarm.collections.ListImpl;
; f7 O7 Y8 ~2 W( ^# b6 o- wimport swarm.defobj.Zone;
) A4 t) i# p/ n& I* Himport swarm.Globals;
e- o- k8 V) J2 z4 J1 Fimport swarm.Selector;
' A1 T/ V( z( ~9 ^import swarm.activity.ActionGroup;
1 {, ~/ b. O3 F: \' iclass Agent {3 k+ d, R$ }$ ~, q, f5 p9 _; K. ` N
char id;; i9 Y! b) k0 Q% N* n5 [5 h. x
; `# O7 Z0 w. z% S" a9 r y- a9 ?3 _ Agent(char id) {/ [) Z7 G. @2 C6 o1 `( o" j! w# ?0 \
this.id = id;4 P+ B$ O, }% h
}
9 b/ v/ T! y) b: Z* f8 k
! b9 Q1 T8 }0 g7 Q public void agentStep() {
5 {% {5 Y' T1 P* y( H4 S System.out.println(id + ":" + Globals.env.getCurrentTime());5 g1 K0 Y2 G7 Z, G0 D* O1 d
}
5 a/ k8 @' Y3 e. a9 U! ~8 K" h}3 j% Z+ T8 n: U
# V; |: O, c$ i5 O& m+ Ypublic class ActionGroupDemo extends SwarmImpl {' c& s$ Q! A& K( R6 s( k
ScheduleImpl schedule;
H: `2 `2 d# v: R% o' _ ActionGroupImpl actionGroup;
- Q! [- K9 m. F" n1 m8 O3 p/ r ListImpl list;
! @) _5 Z% |+ ^6 ? E- N+ W; ^ char Id = 'a';0 G* X) T" {9 E5 H
5 z" ?* d7 n Q1 ^+ _) P ActionGroupDemo(Zone aZone) {
2 ~: T5 d# x4 E. u) B9 F super(aZone);- H8 ]& q! s. g0 F& t) d s" j
list = new ListImpl(aZone);
( m; [$ `0 z; y1 S swarmSetp();$ t" k, |3 Z1 `$ _1 K
actionGroup = new ActionGroupImpl(aZone);
& S8 }' y2 t- A schedule = new ScheduleImpl(aZone);
. F5 I# N' U% T, g2 b+ n try {1 V A1 y4 ?' ~% C/ Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 w. v/ g2 P: ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ |( |2 Q2 |. \0 O6 t
d( [3 |. u) ]9 S( D1 S1 w; _! } actionGroup.createActionForEach$message(list, agentSel);0 O6 a+ n* k" [3 N5 ?( `2 T
actionGroup.createActionTo$message(this, swarmSel);0 W5 q, K7 _: d# D' N/ T5 N
schedule.at$createAction(0, actionGroup);
8 d2 A: o/ a0 _; @) ]* A schedule.at$createAction(1, actionGroup);/ ^. L/ _" _! _* c
schedule.at$createAction(2, actionGroup);& ~$ T8 y# H- u7 R
+ S6 g5 N }: r$ ]7 t: a
} catch (Exception e) {
; G5 Q; U8 X! w9 r$ C e.printStackTrace(System.err);
" d( L: ?4 c( ~ //System.out.println(e);( z5 Z8 _/ h/ W& U' X
System.exit(1);
5 d1 \! A4 T6 [( V/ Q6 f) E) h }
0 T" }" B% N5 a; X# Z
6 T! F/ x% i( c+ Q/ c0 g9 L! e. o" z
}
: G4 }4 V$ i- K2 E& h) |" Q# ^! b* D2 U, x" \: d# T6 C* B
private void swarmSetp() {
: k; {/ w. _7 k7 a. c$ f5 s0 f list.addLast(new Agent(Id));
, B, Q% h* T7 e Id++;. m! }. j j6 v! n$ P
}
0 x; I: s$ d8 ~* n N# ~2 s
2 q8 X9 |+ \6 V( T; F' J3 R" u public Activity activateIn(Swarm context) {
& _, Y5 I3 O8 u0 C7 X7 Q- s super.activateIn(context);( r" ~8 N3 H5 o( _
schedule.activateIn(this);: a) m+ g9 r" A* u9 U5 e9 |- u
return getActivity();( x7 V2 A0 ?" M5 y% r
}
4 d/ J2 g+ ?! P& ^) \: ?! k1 P" b0 A J. K I' b3 A; C
public static void main(String[] args) {! Y' @4 ?$ F! c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ F4 E2 p; A4 h4 m( r# \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 B% T) J' c$ j L
swarms.buildObjects();5 y( Q8 c& ]6 @
swarms.buildActions();
6 g1 q) Y' z* q1 G; C5 h swarms.activateIn(null).run();
9 [ E- i0 z/ Y }; x$ ]# H' d7 H
" c8 v. ?3 f" k$ h& A
} |
|