|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! u/ `% B. e8 O7 H
& Y: U4 a- v/ Y+ a8 Z8 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; i' H x$ g+ c' d6 k9 |! w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! n, |' y' S8 H4 B# A
swarm.SignatureNotFoundException: T0 o& e+ t# c5 S0 W
at swarm.Selector.<init>(Selector.java:76)
# W4 ~! S+ x" U: v1 A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 H. n# E6 m" z: [6 @, Z7 N9 `
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ ?" E% U# t9 m# n) K, M" o! V3 v2 P+ f
2 A+ m4 _5 b, @0 f. aimport swarm.objectbase.SwarmImpl;( F9 Z/ F: M. |) e* c2 i! d0 W/ _2 s
import swarm.objectbase.Swarm;
8 @& S7 ~' ]7 A7 t' d, T) Jimport swarm.activity.ScheduleImpl;
8 {2 X/ |& j# n: o% P/ m# P' Rimport swarm.activity.Activity;- K6 ~( h2 d+ g# U
import swarm.activity.ActionGroupImpl;
& C" z( n; M1 s! H( qimport swarm.collections.ListImpl;
& h; X$ [) C& v. L/ z; l4 @import swarm.defobj.Zone;
. Y& g X B; W5 ^7 R9 jimport swarm.Globals;( ~2 [9 Y. X/ h* D$ o0 I" K
import swarm.Selector;+ y# X2 ^2 q2 c/ C) t6 M: X/ S* D/ s
import swarm.activity.ActionGroup;
. L* P0 l- I. Y$ iclass Agent {8 P) L% z& G& T8 e# x Y0 A; v
char id;9 T3 h3 s# \3 T, G0 j1 R0 w4 O
& F7 x8 R/ S) r. s: [4 Q
Agent(char id) {1 N- Q+ k4 Y, N6 L. J4 T
this.id = id;4 M8 q0 ?: b6 E9 ?& i
}
/ K0 m* |% N: e" v9 R" A3 ?
1 B' n' w. o* w public void agentStep() {
, a" r: o5 h! P- ^5 Y* ? System.out.println(id + ":" + Globals.env.getCurrentTime());
% Y- C+ y" r# S }" n" r) h& B( P8 B& H# C
}
) W/ A# Q2 c2 s0 Y
( e5 c; O$ {( M( n. ~5 kpublic class ActionGroupDemo extends SwarmImpl {$ M1 O# D7 y; p6 t7 K' w4 [" Z
ScheduleImpl schedule;3 l" V2 E6 J0 b9 a% {
ActionGroupImpl actionGroup;
7 F1 l0 A8 }0 t) z) q( Z ListImpl list;" `5 [6 Y, S2 `, K
char Id = 'a';
# H: z! [9 }# W/ |8 L
* @3 |: Y7 y; X& D4 i ActionGroupDemo(Zone aZone) {" c4 K+ e7 K$ `! D [
super(aZone);9 x7 E! ?6 F5 g' y( }, ?6 @) @! `
list = new ListImpl(aZone);# a0 D( |! u: M" Q9 N/ G
swarmSetp();
& C% y! _+ t. a; W4 X actionGroup = new ActionGroupImpl(aZone);7 f: _, D) h N) X
schedule = new ScheduleImpl(aZone);
& t" g% k- d0 L7 ^" C try {8 R8 Y+ I+ H5 P% n4 Y5 p3 V8 h
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 T: l' v) w$ @. ]8 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 W0 f- h; T0 |& S 0 d9 S6 r6 K4 l; j* Y" A4 p
actionGroup.createActionForEach$message(list, agentSel);9 G. y# q' E1 {9 a7 H, B
actionGroup.createActionTo$message(this, swarmSel);9 `% Z1 ?+ F+ T% ]" q- q6 f
schedule.at$createAction(0, actionGroup);' S: V% B! ?9 [( |/ L |
schedule.at$createAction(1, actionGroup);5 l7 E. o+ J6 d( |! {: E/ D
schedule.at$createAction(2, actionGroup);
1 ]' M! E! e o1 q# N6 k, n3 _+ }4 ]# A' }7 o
} catch (Exception e) {
/ }: ^2 L( ?. X4 b! S) D3 t e.printStackTrace(System.err);3 X4 G% ~& U% j% b9 X. [) c( k
//System.out.println(e);
3 g5 B. j% ^0 b* |+ D) O4 H7 ? System.exit(1); {6 W. y" ^. e* y. U2 K5 U3 | j
}
3 H) \: `4 S& [6 ~4 v) T% v1 i1 @- q" l' L, ]5 e y
3 g( W5 l! ]' ~' @+ {+ ^6 _ }4 |' A3 \! ^# Z6 N# h5 L( s7 d
: @: g0 D8 i( ]6 K: Y; a
private void swarmSetp() {
$ W: ^( x1 ?9 H, x3 e; m list.addLast(new Agent(Id));
8 a4 i: E+ m- q, U Id++;' o- M: J7 W/ ?+ v0 V
}0 D" b0 Z( Z- u' M$ C" ^5 P! i
' F. p: u& u3 }5 } public Activity activateIn(Swarm context) {
, z& g$ z4 }% [% S1 i, B super.activateIn(context);
' a/ }0 J, `9 t( K2 d( U schedule.activateIn(this);
' t. O6 b9 v3 {6 s; w- C* U return getActivity();$ l0 n' D2 a* O4 |
}
" [6 f8 ^! d% ? Y+ G4 w$ g. U0 V! o$ z4 t
public static void main(String[] args) {6 L) ?( i4 i; z: Q& Q; U, J: ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 |9 o4 K' [' B! m+ x: ]& k
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 \, R. \- s: I, A8 y6 d swarms.buildObjects();3 e: J: K3 x5 x2 p( I" n) U% @
swarms.buildActions();
7 f, U9 w4 J$ m ^! L/ f swarms.activateIn(null).run();
8 y, j, u; {* `1 W- k H }2 ?' I3 Q6 h r$ G( ~8 p+ _) z
/ @# l' }+ F" M1 F, E
} |
|