|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 ^0 Z! A" J; c2 i5 Q/ B& \ ~$ R: k' L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( P Y8 M+ G& G6 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 M- U& I0 Y5 C0 O+ i @swarm.SignatureNotFoundException
( i2 I1 y. q/ h& V# ^ at swarm.Selector.<init>(Selector.java:76)
* I5 Z+ V8 p3 L9 L9 w6 ~% u# M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 Y& F' S; e6 c6 u
at ActionGroupDemo.main(ActionGroupDemo.java:67); L: V2 k+ m5 ^8 U7 ~" ?
2 `5 v# H3 T7 ]( ?2 U& A! ]: e; G0 T( a0 V! D9 u
import swarm.objectbase.SwarmImpl;3 y. S. G+ i7 \
import swarm.objectbase.Swarm;/ i2 r- \% ` J
import swarm.activity.ScheduleImpl;
; r' O( H/ v9 f( [' ?/ [: Z) d" t7 Rimport swarm.activity.Activity;
3 e; I' x A; {: H. _import swarm.activity.ActionGroupImpl;
7 t0 y, y+ Y$ d/ Y& F7 @import swarm.collections.ListImpl;
, K, ~8 s2 s3 _7 @5 f" X& p% R2 oimport swarm.defobj.Zone; 2 @9 O0 D+ I+ y( W& s1 b
import swarm.Globals;4 {( T) W1 M8 \% V* H, U# e
import swarm.Selector;8 h- F& Q3 x* D$ E7 e9 r" A4 S
import swarm.activity.ActionGroup;
' s1 O) J* D1 E% M; x" ~* K0 k( cclass Agent {
/ x3 [' U$ S! n. |% b# \( Q char id;
# H" C4 `/ ]2 f B( l9 L# g
! S6 p' b/ e" B7 U ^* H Agent(char id) {, h$ W2 L4 T2 ^. V
this.id = id;) n9 r5 D% h) k3 B3 H
}0 o* v3 z8 Y" M: c. l
4 `* T( J' c* U# d# y+ X# V public void agentStep() {0 ]* T8 r' t6 X9 b9 @
System.out.println(id + ":" + Globals.env.getCurrentTime());+ Z! K, j, f) n8 x4 A! M, `2 ?; q0 z; i
}
2 h3 R* p2 r! w: Q- F5 T8 n}( k% r; E* H' `& s! e) n9 z9 `
0 f5 p8 G4 Q( {4 ]% R E/ W' jpublic class ActionGroupDemo extends SwarmImpl {
6 O! i$ a! l! g9 Z+ e0 A: j, z8 _ ScheduleImpl schedule;
# w- _( ?6 E n" Y- M ActionGroupImpl actionGroup;
5 @! s1 F% m9 F0 M7 D ListImpl list;3 ?4 h" ?; Z! p# b( M1 O7 N" `
char Id = 'a';
9 |8 a6 m9 B4 y) d2 |$ E2 z A
6 j. W0 X9 i2 J) r- O" Y ActionGroupDemo(Zone aZone) {
/ z5 c( q, P: K super(aZone);0 D2 D3 g+ p5 y/ G. n
list = new ListImpl(aZone);
1 s; B/ N! C$ B# G swarmSetp();9 q" b. l! @% y
actionGroup = new ActionGroupImpl(aZone); d+ _& j) f3 o/ F+ A
schedule = new ScheduleImpl(aZone);7 o9 }7 t( |% `! l' D! d
try {
$ h0 g, J" \/ P% @: O9 z/ h Selector agentSel = new Selector(Agent.class, "agentStep", false);5 F, f- j! F% D. k5 F
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! p' R: [' z" v& ^/ |5 e
5 i- z- ?1 V) b- Y
actionGroup.createActionForEach$message(list, agentSel);
! h1 G0 H3 U3 L3 @6 x1 Z. w0 [ actionGroup.createActionTo$message(this, swarmSel);5 T$ z3 {- \; l* Z# n7 l; B
schedule.at$createAction(0, actionGroup);( X3 k1 I: X+ U9 [$ D' F7 j
schedule.at$createAction(1, actionGroup);. o* _1 r1 [0 j- I8 Y9 [5 Y
schedule.at$createAction(2, actionGroup);
% Q0 ^3 ~- `/ T2 q8 L) q# U
! _7 ]% J7 d5 M: t- s } catch (Exception e) {
8 I; m1 m7 Q) v( { e.printStackTrace(System.err);
1 p( V$ t1 O6 U //System.out.println(e);
4 v( R; c. \7 ?' q8 ^ System.exit(1);; k0 u1 T: t; u7 `2 p9 U/ w
}
4 y9 C) o, O) k2 Z, f q: R& D$ \! V
5 Y! @3 h# s1 x7 C% i- A0 N
}
' M/ U) y4 |) u
7 G; {: {3 g( ]7 j private void swarmSetp() { Q# e8 l' u# K0 I4 l1 _3 J G9 ]
list.addLast(new Agent(Id));
. p; B4 o& Q& |0 W! j( b Id++;3 P5 I. V7 I2 d0 e! u: Y% t
}
$ H" H. z! n3 C( ]: n) ]* x& V8 Q" y& l, v& j" z4 j9 N5 c
public Activity activateIn(Swarm context) {; K( \) T& Z& |& C& h8 C" J) z& T
super.activateIn(context);7 t/ _9 m; N# x1 R4 W" f9 ^
schedule.activateIn(this);5 g/ F: e: f) E5 d" J" b
return getActivity();$ P5 X. `+ K$ M% ?' I' t% {/ Z
}
7 c. w7 h: m' J, c( r% p# s) W. ^% h/ \) m
public static void main(String[] args) {
& L4 e4 [3 d1 b2 M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 c8 U2 D' O% u* M" z4 r5 j9 d- ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ ?6 X% [' {6 U {
swarms.buildObjects();
- |( D' D! y7 A2 [0 j5 G5 ~. y$ M5 \ swarms.buildActions();
: D9 b& _. M7 l" [$ ~9 r swarms.activateIn(null).run();
/ g4 H5 _/ t% U$ I }
) Z5 K& K E. g7 ~2 k3 k$ A8 r2 T, G: E' |" h `2 u. |
} |
|