|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 u" i) L0 x" ? O' x' h& v
" e$ A0 y7 @7 A7 Y5 ]2 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, w6 s3 W, T3 X5 D+ Q+ G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# b+ |8 l" [+ l, A5 x# E; X6 _
swarm.SignatureNotFoundException
. v1 v# F: r' a2 `* y# P1 \% n at swarm.Selector.<init>(Selector.java:76): U! a' [; L5 q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- u1 r- ^- B6 c* ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* v* _( M- r1 v/ p+ }! x' F; M5 z4 X2 }. X% j8 U
( U/ Y2 @ C; k: p& X9 Y+ Timport swarm.objectbase.SwarmImpl;
2 t8 V+ r8 S7 R3 ~: k7 A; g' R) A1 }2 }/ Z* `import swarm.objectbase.Swarm;3 [4 p$ I7 |0 u2 ]
import swarm.activity.ScheduleImpl;
1 Z7 J. K; r5 n# h4 r1 e, p2 z+ {import swarm.activity.Activity;9 F; u r6 D9 P2 D0 n( t a/ @' _
import swarm.activity.ActionGroupImpl;, D' r! b9 c G$ b
import swarm.collections.ListImpl;
' Z4 I" x$ s) j. z5 n2 Y- o0 timport swarm.defobj.Zone; - T% ~3 s* D$ B
import swarm.Globals;3 h- [% Z" f! C" A( Y7 S n
import swarm.Selector;
( W8 m: B+ Z+ b) k5 Z7 Nimport swarm.activity.ActionGroup;
+ ]# d3 C* \1 ^4 Tclass Agent {
; t0 S" t, m! v! y( n% j char id;7 Y. Z! x8 R4 G( x$ z' ?
; C" g9 ^( I" a7 M
Agent(char id) {' m4 z% k. ]6 e" y7 ]2 R) p
this.id = id;, i* L6 a* q H% n F
}
. e2 D# v6 U, x/ B
2 w, P6 T. J; F3 Z4 G public void agentStep() {9 V8 f' N" j, i/ h0 S
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 {- Y8 C" m7 E- g, i }% h9 k( @) Z! \& z5 j+ h
}- b, F+ F% Z/ i8 a0 N7 P8 h! J
# ?3 P8 i y; D7 ~
public class ActionGroupDemo extends SwarmImpl {
5 F/ p6 l5 ~4 q, q ScheduleImpl schedule;
9 f6 M8 K5 e3 ]* k: m" [ ActionGroupImpl actionGroup; h) l+ u& C; j
ListImpl list;
- I5 {8 ~( b% V char Id = 'a';3 L/ e {3 c; I: ?& M5 f7 d
5 f; ^8 g- P( [3 }: X
ActionGroupDemo(Zone aZone) {
# }7 B" G4 u' N# c, c. N super(aZone);
6 L% H0 E% t# N. `2 H list = new ListImpl(aZone);
: a; D4 r; h0 L4 y$ ~. I1 b/ { swarmSetp();; e u( O5 {0 r' c
actionGroup = new ActionGroupImpl(aZone);3 }( |- `) J: L' I: J0 Z
schedule = new ScheduleImpl(aZone);: S0 L9 Q6 } Q8 ~+ ~& {5 Y3 E
try {9 g6 g: E( M' \2 Q& X
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 i* [ N* U0 j' Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! u' W6 M5 x5 J6 a6 a7 | , f* [/ b4 h3 h3 X0 Y
actionGroup.createActionForEach$message(list, agentSel);
6 E+ d Z# N4 k$ p* { actionGroup.createActionTo$message(this, swarmSel);
6 j1 \. ~3 F* ^ schedule.at$createAction(0, actionGroup);
. o( P |5 K- k' j' f schedule.at$createAction(1, actionGroup);
! R/ }. K" g2 i0 @, L" t6 ]5 |0 t schedule.at$createAction(2, actionGroup);7 J+ Q2 {3 k3 m1 T& }
2 u) ]3 W3 }7 [2 u) U9 a# P7 q } catch (Exception e) {' D/ w0 b: C( s/ ]6 t) Z: c1 _( m6 z
e.printStackTrace(System.err);
9 Q3 |( g# U) d. d" H# M I( m# ? //System.out.println(e);) g& _% N1 Q* a# I3 S& q# w
System.exit(1);( s+ X0 x/ A1 z' Y9 B2 h
}$ {6 o1 A& b4 ]: W/ T' q! J6 [
6 j7 H! @" a+ S& ~' \ {
* ^9 t0 Y( G8 q h }
% U/ D. Q# _! H- e6 c% ^9 V7 F7 j" J% z' L ~0 N. w
private void swarmSetp() {% }7 O( D) K& o
list.addLast(new Agent(Id));; {5 Y, I& _" v3 u P
Id++;2 K& K6 @$ w6 W# @, U. z- x0 J
}! t9 G' p; m0 f' J% G4 Z5 z8 f
: J1 W1 T2 n1 z0 k' r
public Activity activateIn(Swarm context) {
# ]3 U9 T2 |( \6 i super.activateIn(context);
- m; |4 R- l+ Q. T8 Y1 j% Y& F schedule.activateIn(this);
1 G6 i8 k: v: H1 M' Q7 x return getActivity();" w8 l( L' d7 T
}
; [ n8 b* n; v- @) Z) H7 c3 H
* ]: h# i5 K9 p$ L' w2 r+ V7 a public static void main(String[] args) {! N7 j& K2 h% W0 u( M' T4 K! B
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ?# l% e8 o8 f6 m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. K3 m A/ y7 P7 N8 ] swarms.buildObjects();
, I, W) F$ }9 Z1 j swarms.buildActions();
, y, r; ^* z4 i4 \( B3 J$ J6 q swarms.activateIn(null).run();
- c* e! h5 s* F2 f2 [3 H" h9 o2 N }
2 L+ {% E% Z- q8 s' ]. U8 ?
- }: r5 c* {% ?0 \- Z} |
|