|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , j. H' E: g* \3 m5 z- G
) j/ E0 d! ^. i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# a0 d6 t2 K: M- H, x( l9 U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- m9 T' s# t, D( |
swarm.SignatureNotFoundException
2 w2 \$ }5 d2 d0 c at swarm.Selector.<init>(Selector.java:76)
% ^; G3 G% y1 M5 k) p at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 R5 [- \- e6 W( u! W7 X/ x
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. j8 P1 p. g0 ]: e$ ]% T
* ?6 G! }/ V. U9 W2 Z1 u; O( q) ^- a* P. p
import swarm.objectbase.SwarmImpl;7 B* E/ c$ ~. l1 }9 I8 O& q* c
import swarm.objectbase.Swarm;4 U1 M1 x# S* y# \( d5 p6 W
import swarm.activity.ScheduleImpl; Z) t X u8 n/ Y8 n
import swarm.activity.Activity;
V- B; P5 c- [" vimport swarm.activity.ActionGroupImpl;
8 J1 ?, a' f; ]import swarm.collections.ListImpl;
1 [- `$ d* b! C' m- x3 ]* z; Uimport swarm.defobj.Zone;
: k8 r! n/ ]4 Wimport swarm.Globals;
- d# i: z: Z+ T5 E. R3 c' rimport swarm.Selector;
* Z+ m3 D, s w7 \' h4 c6 ?import swarm.activity.ActionGroup; + b0 }. {7 O" R. ?, L( E
class Agent { B9 j2 v3 F) A+ i, j$ d
char id;
% T. Y( A3 H' i$ n$ l R1 e! z( `
Agent(char id) {( |- O( @$ ]$ ]2 d @( [3 N% ^
this.id = id;0 l9 B+ P- i1 p6 M
}5 N8 c6 K9 A0 N% u! A: h6 Y
9 ]0 x7 U* k7 C6 _0 |% p/ o! b public void agentStep() {5 q/ {* h: R6 g, c1 j: Z7 V, O2 D4 {
System.out.println(id + ":" + Globals.env.getCurrentTime());0 a9 W7 ?$ V+ z6 V5 u; b
}
4 p5 Y7 @- ]) ~}
Y0 a' Z7 l3 }5 `- J7 X7 {$ N2 v) j4 ^ x9 C# H7 m8 f; E4 B) L
public class ActionGroupDemo extends SwarmImpl {" S: _3 R( |, d7 N5 D9 q9 |
ScheduleImpl schedule;
" Q3 w. Y. F8 g# t2 P ActionGroupImpl actionGroup;
" F' ]. s6 C$ B2 q4 `8 a5 T* ]/ c ListImpl list;
! E- ~/ h, J5 [' y; c( U7 a char Id = 'a';- ]: a) C1 S8 }& o) d, n# z
" B7 \ @( ~6 T" i. _ ActionGroupDemo(Zone aZone) {2 X: Q1 @! u. U/ {1 c7 V. R" K
super(aZone);
0 i: B7 P. S2 }+ Y0 ?2 B3 \ list = new ListImpl(aZone);$ \6 k/ m' a! `, l7 S% } t
swarmSetp();3 e* V8 I' S4 G4 z; g
actionGroup = new ActionGroupImpl(aZone);( G) k0 Q0 N K, y- I
schedule = new ScheduleImpl(aZone);8 \5 M" q& X+ p) S- ?# a! l
try {3 P, F9 G' `7 W+ R! v( e9 t* Y) R2 ]# z
Selector agentSel = new Selector(Agent.class, "agentStep", false);# h6 C- U* a0 Z+ Q: [9 K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# }/ J1 U# E/ d) S1 d2 | : l7 F+ p3 S1 Q% y# F4 r
actionGroup.createActionForEach$message(list, agentSel);5 f; @3 F! r; `+ K K7 R
actionGroup.createActionTo$message(this, swarmSel);
6 c0 U& D! j! A schedule.at$createAction(0, actionGroup);
7 U4 a% q$ C; C0 z' w2 V% H( M schedule.at$createAction(1, actionGroup);# Y$ O5 ]8 j& D5 ^. {
schedule.at$createAction(2, actionGroup);+ x7 K+ q _8 \4 P/ h
! B3 b( j+ C% E4 k7 R; Z } catch (Exception e) {, s+ r* c' ~0 X3 \
e.printStackTrace(System.err);
: {: f* ]0 B' o //System.out.println(e);
0 J" I4 L& e v3 [: x System.exit(1);
0 R: ~0 N/ _" C& y- _" Z; g }0 Q E, h, [4 e3 q
' Y9 p+ j. x; W
" K/ w# Z- c# ?* U% o; B) V2 O
}7 I* ~1 F# r6 L) W, K
# ?0 ?" I) ]8 G# l4 V
private void swarmSetp() {
4 C7 b# l/ |; v$ R list.addLast(new Agent(Id));
' M8 H; S. H/ r Id++;
! {6 t, H7 g% a% N; d; e) w }
0 f. X3 d* d. \( v8 D
) D& B7 G: v5 D+ K6 U. I; u7 |1 p! b public Activity activateIn(Swarm context) {
% O1 S5 G/ w) B K4 D9 i: @2 R super.activateIn(context);
" o8 t" M3 Y2 g: w( {, o4 x P1 _ schedule.activateIn(this);8 K/ l0 }4 Q7 b2 d
return getActivity();* C( h6 c) H: i6 K9 ^1 s( o4 D
}3 Y' a+ d5 X% `7 V/ r, Q- S
& ~! S% W5 n7 o7 v public static void main(String[] args) {
2 ?- x j" L, A* N8 @$ H {$ W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 j5 U- S: q. O$ o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' `( E* u( I% Q2 z: a; [& X
swarms.buildObjects();
6 J, o% `9 N3 I; l% n2 A3 f swarms.buildActions();
) s' \9 Z7 o) k) B% O+ }5 z swarms.activateIn(null).run();* Q" ~. W" J/ V
}2 F' _+ j7 i, i; Y5 {4 | W
. T5 H" N/ @ Q* F ~% M- ?- q4 b, ?) M( r
} |
|