|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" d+ d. k$ Z& }- k2 U' n9 z2 R) X! |* V+ J( [- |5 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. a; [7 m9 x- @* R! L- @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) T1 _- w f9 g' H; ?4 D' I4 vswarm.SignatureNotFoundException
) M9 h* y( Q" [$ e+ [4 |$ N8 I. _ at swarm.Selector.<init>(Selector.java:76)
, \0 y5 ~- U7 i M! V# R at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" T+ }3 I. n: a. P at ActionGroupDemo.main(ActionGroupDemo.java:67)9 @# q! y7 w- Q6 H" f( H9 }# y
+ H/ N* J2 g$ v& ^' ~: m8 h" u* n' P4 }
import swarm.objectbase.SwarmImpl;
9 q2 W- o. v9 h' e5 Fimport swarm.objectbase.Swarm;& N6 [. _% f Z/ ^+ {. q% q
import swarm.activity.ScheduleImpl;/ X3 @* E g% }& A8 s" r) L
import swarm.activity.Activity;
/ P x- Q: U* \3 f0 {import swarm.activity.ActionGroupImpl;. | B0 D% W9 q& w9 W# n
import swarm.collections.ListImpl;
8 m9 V$ k" l- v- g8 \* Y' j+ oimport swarm.defobj.Zone;
0 i# j8 n: b% _/ _* K# m8 ximport swarm.Globals;
# }0 ~9 ]* P0 W* E4 ]import swarm.Selector;. h- V0 z# L3 ^ M
import swarm.activity.ActionGroup; # P5 Q6 q4 F$ y& h; F3 P
class Agent {+ S9 ~7 Z c7 w& y. M
char id;
0 m' @4 F8 ~/ e: f* Z1 L% `7 S& b: F. I
Agent(char id) {
: e+ T$ r4 o' f4 f" S this.id = id;
: R5 x @& k9 _" d }7 h" k+ H( D+ o4 J: y
: I1 N7 c( _* j) ~. B2 z public void agentStep() {
1 S, N$ E. ^4 K# X- ? System.out.println(id + ":" + Globals.env.getCurrentTime());5 y# W/ F6 a7 ]% k, S
}! }: C8 ^& ` L P% L/ f: Z
}
( _. z2 D5 o/ _2 o
% S- M3 l; W$ t/ G& wpublic class ActionGroupDemo extends SwarmImpl {* ^2 ]0 [3 |4 Z3 u9 x0 J) P+ Z
ScheduleImpl schedule;* G; K; X: _5 A) F1 |/ ?3 j, X
ActionGroupImpl actionGroup;
* _- V9 j7 W( m6 J ListImpl list;2 h- z* F* F6 S: D
char Id = 'a';
; h5 A% B4 W; T6 h4 K p) _+ g( R$ ^5 E" s8 c( Z
ActionGroupDemo(Zone aZone) {
, r5 @) s" `- F& p+ U7 Y0 J super(aZone);7 \4 V7 S& o: ?) E
list = new ListImpl(aZone);
7 d6 ~+ T! [5 l& B1 p* O& K& u swarmSetp();
! n2 e, z: x- a; [% j5 } actionGroup = new ActionGroupImpl(aZone);# H$ h5 _" g+ {0 K6 u1 M
schedule = new ScheduleImpl(aZone);2 c( j5 H. r+ E7 v& ]4 ~
try {6 ?; c- n3 v; O) \7 ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ s \# e5 t# s" ~4 A4 d) G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 ]3 C- h) @0 i" F2 N4 Z
( d! v. L, F* V$ p5 E
actionGroup.createActionForEach$message(list, agentSel);! u n. `, c6 L2 n1 q
actionGroup.createActionTo$message(this, swarmSel);1 E3 n* b7 a( J* n5 ]3 K* Q2 N
schedule.at$createAction(0, actionGroup);' h( | R% q) J6 M: T, S7 T
schedule.at$createAction(1, actionGroup);
- @+ U0 c# }0 T9 r6 V7 @ schedule.at$createAction(2, actionGroup);
0 G6 [, N1 k0 ~7 V
8 E* [" l* ^1 I% h } catch (Exception e) {3 k5 ?1 l2 e4 C
e.printStackTrace(System.err);9 s& s% ]3 S, i
//System.out.println(e);
+ U/ t) H$ c8 \ System.exit(1);
% H' y% s: T6 @/ m( { }
, z; ^- P& v* z! \8 t# j( P# r
4 Q1 l8 \# g/ M" K2 b H! y- X8 y: Y. Z' e# j, R
}% q, n0 u6 g5 I2 _6 P# t9 |2 f2 ]% @
9 Q8 o& |, Q$ g$ a( i2 K3 S# o! D private void swarmSetp() {( M% ~# B- Y9 M1 C
list.addLast(new Agent(Id));# V T3 V- R5 K/ S
Id++;
% ?/ @+ R: q) m% B1 U% [ }
. A3 s! D6 P& i5 N5 s% i
$ ^4 \3 P8 h7 i7 G2 n public Activity activateIn(Swarm context) {
( i2 ]1 D' f) u; D super.activateIn(context);
0 l0 H5 r2 y* _1 x/ ] schedule.activateIn(this);! W2 E" k8 m% w( W9 r- L
return getActivity();
% u1 y- h4 L7 t# E4 b' O2 {! I }
" T M& A [% j$ S, _5 K
' n1 G4 c, n B7 K4 Z: a public static void main(String[] args) {
( d0 y, M0 b6 _" `7 ? M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 W' r% Z) b* Q8 a0 _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* ^8 u* M7 ]8 [- w) y
swarms.buildObjects();, K0 N- w" r8 _( a- X
swarms.buildActions();
: _5 ]4 o. W$ P! x8 E swarms.activateIn(null).run();; T3 a. W% u# g) @
}8 e" P( n3 e0 b
0 K5 N: c/ k: q% g* g# ~9 C8 q3 _+ c Q} |
|