|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 k' D/ F. j- y, b$ n: v4 L" ~9 c2 O* a* I% ^9 m' j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ h0 V; z: O0 h( |( _+ _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( B/ X) S4 ^' k/ A% [8 _# A1 Xswarm.SignatureNotFoundException
0 C1 @$ o$ C! S7 J$ D at swarm.Selector.<init>(Selector.java:76)
' M" H0 n: p8 n: c: y1 E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' y! Z% R% {8 x7 t! p; ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)- Y2 Z6 l1 I2 M H6 V, o6 T5 d
# K$ x% w/ L( W" c! A
, z! M$ O5 n limport swarm.objectbase.SwarmImpl;
8 B$ e* q1 T' p( N% l7 iimport swarm.objectbase.Swarm;* a. H! X; @3 M8 w5 c- d0 E2 q9 u
import swarm.activity.ScheduleImpl;
0 M/ Y* |: |; [. O0 wimport swarm.activity.Activity;
& S$ ~' ~6 p& U/ U: s. ]import swarm.activity.ActionGroupImpl;2 a- j k* `( Y* Y
import swarm.collections.ListImpl;. X) i: S7 u# M7 K$ J$ l5 c _
import swarm.defobj.Zone;
, R" [7 N* O& j( ?4 @import swarm.Globals;$ J1 ^/ ^( h9 ]4 \# T
import swarm.Selector;: r6 t' h- \$ a! [" i C6 \' k
import swarm.activity.ActionGroup;
. [7 \$ h5 z- |- t3 Rclass Agent {
% m. K/ x) J/ \" S. E char id;
4 }* p7 ]4 M3 S/ A! `4 o/ l. A5 k2 e2 L" g7 Q: Z
Agent(char id) {
" B' v: u! ?6 Z( U1 n this.id = id;1 {) d- S9 N8 @0 J" {
}. G9 T0 P5 n# z
: D+ ]* ~* a5 _, Y0 Z4 R0 W public void agentStep() {
) x9 E0 |" z: r" I& `1 K2 f% E" f; ~ System.out.println(id + ":" + Globals.env.getCurrentTime());# Z g* w- w. E9 u
}
1 U' r1 X0 Z/ |* Y) d& s2 z}3 ?7 h. X( o- i( N5 l- V
/ t y( X: [- \2 _7 fpublic class ActionGroupDemo extends SwarmImpl {4 D' K4 P0 q- F2 G) A3 M
ScheduleImpl schedule;
2 J+ f! p3 n& ^ ActionGroupImpl actionGroup;
1 w/ F- H+ ?" c8 G8 C) p! A ListImpl list;8 X1 t6 i$ I4 V1 K6 I
char Id = 'a';
9 F" c% m9 A) K' P6 J; u q
" X# e) T) H% r$ h4 n/ N ActionGroupDemo(Zone aZone) {
$ l" u5 W+ i" m W$ T2 z% l super(aZone);
. i! b2 h; q F3 ? list = new ListImpl(aZone);
. g% A) S C6 ?+ V' H0 M+ G" m swarmSetp();( E% [3 ~9 ^2 P/ }
actionGroup = new ActionGroupImpl(aZone);/ Y5 |3 b4 ^$ m H% d
schedule = new ScheduleImpl(aZone);
0 h/ L, T$ c I- g try {4 E2 ~. A) @0 F/ d7 Y; P( g
Selector agentSel = new Selector(Agent.class, "agentStep", false);- ~* E1 l8 Q) t, g' k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& E6 [7 ^* [0 L8 l
) T8 F' S9 l! l& z1 G1 j9 j actionGroup.createActionForEach$message(list, agentSel);
5 F$ @) b; o5 M+ ?6 f4 N/ f actionGroup.createActionTo$message(this, swarmSel);
/ A! A+ i' ?2 e: n/ s: m; }0 | schedule.at$createAction(0, actionGroup);
5 N. F- d2 B3 e: W schedule.at$createAction(1, actionGroup); S* q# {8 G# P
schedule.at$createAction(2, actionGroup);
, W' `% A, z- v# u- E( b- X* R( d* Q1 X# o6 S6 Q/ A7 M
} catch (Exception e) {
4 h& I% z7 v/ H# i' D e.printStackTrace(System.err);" k7 ^2 \* [ \, w: F
//System.out.println(e);
3 H0 C% K5 B# l6 |/ o System.exit(1);5 v) k1 X/ ^# Q9 e0 w
}+ E3 f4 r2 V0 Q) K) f; e
: m; @+ T5 E; i# y" q) w0 T) o' u) U5 y
}
! L. P; m" s8 y/ G& z
1 ?( ?8 k9 Y8 u private void swarmSetp() {% K- T! Y! b+ Q
list.addLast(new Agent(Id));
5 @! X$ J8 g8 {. _0 S Id++;& I) c3 I q% h5 R
}" W! i4 ] C. W9 L
: O4 _: C# a& V8 j/ ? public Activity activateIn(Swarm context) {' ` G% @; b9 c- s& M
super.activateIn(context);+ @& g' F/ x) K# _# e7 z s
schedule.activateIn(this);
/ n; G* C, z, g7 _( z0 M7 Z return getActivity();4 j; i" ^6 `2 R R5 `+ R
}1 s, E' l! b2 r& |5 o: ?
. J$ ]( r: i" G$ t( X+ O4 j( O public static void main(String[] args) {
8 Q N. n. O# o6 V! f2 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, J1 G7 q9 f+ c/ Z' s ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 a, K: j8 [4 }, s6 R8 @# T7 k# F swarms.buildObjects();) o* ^8 T8 m3 S
swarms.buildActions();& s* s4 P5 ~- E+ r, [2 c
swarms.activateIn(null).run();
* P }4 R; ?7 `7 ? }2 P3 p1 _' o1 |6 w. u; w" g' Y
$ t ]- A" _& F3 X0 d5 L6 K- \} |
|