|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # F3 L. H5 ]# f2 Z% M5 X0 @6 Z
# M3 P/ _& _2 `. D. A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 I, U' Y8 Z1 g1 |% H( s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 V [4 B/ a! K1 f* A
swarm.SignatureNotFoundException
9 }2 O6 r% c7 v( W+ S at swarm.Selector.<init>(Selector.java:76)7 ]' A$ t: S& k0 d: Y% P+ ?' h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37). ^3 ^" o7 r+ h, w
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# B+ V {/ Q } R- v, U5 P3 _# v0 n# n6 P+ M
R1 j" F6 ~. wimport swarm.objectbase.SwarmImpl;; b1 H3 P( K; V8 `0 M
import swarm.objectbase.Swarm;
9 b( V3 d3 U5 U& _9 Wimport swarm.activity.ScheduleImpl;( S- l4 i/ ^& C( ?' X5 S8 q& p
import swarm.activity.Activity;. O$ p; b1 Q, P% V+ S
import swarm.activity.ActionGroupImpl;
8 h" h: Y9 d! Gimport swarm.collections.ListImpl;
& Y# D5 V' P: T' ?' V! g5 u qimport swarm.defobj.Zone;
- D& n) Y- W& T Q4 W/ R3 Himport swarm.Globals;
$ V& J. H+ i7 b' M8 Vimport swarm.Selector;* o2 _6 W3 U/ e- v7 z6 M) c
import swarm.activity.ActionGroup; / d. D$ ^% |( ]1 M4 k3 o
class Agent {2 }3 r& t/ v9 N" F- L8 V; G
char id;+ h3 [. U& l; k$ P- {
; }* f0 i1 J# q2 n1 }$ C% D6 H" t Agent(char id) {. f) }4 d1 D) i V* l4 x" R
this.id = id;1 a0 h6 W% z* g0 O
}! e/ }. j/ a! Q- e3 \6 c c
1 x9 Q8 X+ W; M; Q) ` public void agentStep() {' G7 p0 n$ \0 h! [6 [) Y* L: h, m
System.out.println(id + ":" + Globals.env.getCurrentTime());0 `( ~4 s5 I) b
}' p0 ] }$ V/ w
}/ L; Z) S1 D: l; |
$ t, \! T6 u, _; t, l) {
public class ActionGroupDemo extends SwarmImpl { r% s N" y4 u1 U
ScheduleImpl schedule;# B0 a6 U" P8 d8 }. G& N. n
ActionGroupImpl actionGroup;2 H" b4 J+ U! ~" d0 V1 w
ListImpl list;* |+ Y, u1 t; s% V. _/ S
char Id = 'a';$ A/ ^9 C7 {( G7 M l3 N7 b
9 |2 B4 [ _# G
ActionGroupDemo(Zone aZone) {9 T( g/ {4 r4 ^# o
super(aZone);
: m; @& m* U$ V p2 v- @6 N3 o& @ list = new ListImpl(aZone);
( R* r# Z) _5 a1 x2 @6 D3 n swarmSetp();2 N& p5 g- R, R d6 D3 \
actionGroup = new ActionGroupImpl(aZone);) q( [( w- a$ J8 `; M5 b: y$ x1 l; n# G
schedule = new ScheduleImpl(aZone);
# b! N7 l2 W% m8 ` try {
5 i2 ?4 |! B$ H) I! E, h! b- T Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ G& c; M. g) Q) {' g: h' Q+ b2 N Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% P1 j. Q6 o# W1 M7 o8 A9 T - g* s. A n0 d9 S
actionGroup.createActionForEach$message(list, agentSel);! z1 _ X! i# O- I+ g+ t
actionGroup.createActionTo$message(this, swarmSel);" x0 T0 v* g7 ?! V4 h y0 Y
schedule.at$createAction(0, actionGroup);5 l. S( T& p$ a; K* S
schedule.at$createAction(1, actionGroup);( E1 p+ s0 _& V0 g& I: u! e! \
schedule.at$createAction(2, actionGroup);
1 Q: V% J3 t; W0 R, u$ a# r; `! w \: h
} catch (Exception e) {+ _6 K7 S y2 y5 y5 R
e.printStackTrace(System.err);
5 L, I8 |* @+ @. k) ] //System.out.println(e);2 `8 H& _/ r0 O6 ~$ w
System.exit(1);+ {+ \4 |$ d% m, o$ m. l
}
$ g! V% |6 d) E% v' L
0 G# {3 y6 y; ]" F4 w% `2 e1 U) ?( b0 N/ A
}
% C1 n* x% `: V
; M6 e+ e W0 N% N private void swarmSetp() {" c0 _7 n: L& ~( k0 ~- v4 e
list.addLast(new Agent(Id));
3 d) y( V7 `- s+ m* s% C Id++;
, V& b* o Y. V! i1 j' r) k; D* N! I }; |) m3 S" _, z& H' Y& N7 `
& W# C5 v' ?: m/ b! K public Activity activateIn(Swarm context) {8 Q# o& V/ Z" U' V& v9 i$ m- y
super.activateIn(context);; x' p( U3 l& M6 q9 N3 e
schedule.activateIn(this);
, Q& K) Z# t8 @$ [+ f' J) ~ return getActivity();- V) M4 L, S, F; r0 y/ q$ J0 }
}
' F0 T# U" _6 ?2 j- k
1 x: N3 A5 |; z: v' G1 o public static void main(String[] args) {
' X$ ^: }5 E3 Y$ p) {# s+ E% a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; U: p7 B0 R, n; X7 S( q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: x" Q) c; u8 a" n7 |
swarms.buildObjects();0 r7 K* `( }/ \. O- c
swarms.buildActions();" f- t3 ~ }1 }5 P3 R; h0 U: x
swarms.activateIn(null).run();% ^" L% e0 N9 v, _$ a0 z( W
} D- \" B+ v) t3 `( C7 x/ b5 E3 M
8 j6 A$ ~8 }& f6 e1 g& \9 Q
} |
|