|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 k7 m" M6 y, b7 H7 M
" U: \9 l! l& r6 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 e( p, ?" U" P- N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) e( T# t( A! S8 _5 p9 B& `; k
swarm.SignatureNotFoundException
3 g8 }( H6 Z; X4 x! m/ f at swarm.Selector.<init>(Selector.java:76)
, b' h9 {2 |' w5 w# j3 D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* |: T9 |# R5 k4 |7 M3 k: f8 Z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 K6 Z) b1 ^% e2 z' ?" B/ S8 V( y8 E
@0 F& c, y0 u3 W# h0 zimport swarm.objectbase.SwarmImpl;
7 y6 ]' b3 K* Gimport swarm.objectbase.Swarm;3 P+ _/ Z* g9 K
import swarm.activity.ScheduleImpl;0 T2 n g; ~8 J" Y$ ~8 T
import swarm.activity.Activity;
8 R6 `2 @- n1 Mimport swarm.activity.ActionGroupImpl;8 R6 C7 q. p$ {7 F
import swarm.collections.ListImpl;
2 k& {: ^/ I0 v" Mimport swarm.defobj.Zone; 0 S" \% r- z2 } x
import swarm.Globals;
1 k8 b. p5 e5 Rimport swarm.Selector;( w/ [% N/ E2 P) l
import swarm.activity.ActionGroup; " t. ~& ~0 M3 W/ @8 f4 h! {$ b
class Agent {8 w; P) o ` c# g/ R5 U
char id;
+ j2 t+ H' Z% t5 ]( m- ^" J) ?
+ j' f* e5 [ Z Agent(char id) {
4 P3 \7 z7 k: [( G. D this.id = id;
) p7 h3 O, U, {. k, D' K }
3 D0 u" x. r: `8 g0 c! `9 V+ `) a! L0 A7 b# E6 J
public void agentStep() {8 L, E% j2 H& F8 V4 [4 c/ ~
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ u. {' |& `3 Q3 _! m- s; o }
8 R+ e- R. {: ], f9 O7 \" T4 V}
: O$ | c: u$ I' s9 Y1 }. U8 A: ^3 t' H! J* J3 }
public class ActionGroupDemo extends SwarmImpl {! x6 p3 U! v/ Y6 h9 d% r6 X
ScheduleImpl schedule;
. F" ]% \4 T \% t2 K6 Y; k9 g1 N7 u ActionGroupImpl actionGroup;
" C! a/ v( E$ q# C$ C ListImpl list;- U/ A. s* v+ p( w! A$ F# x# k
char Id = 'a';' B i* v+ w* E* c' @# G- E# r
+ s. |' e! v S/ y3 z ActionGroupDemo(Zone aZone) {- U; J1 Z! d6 X! d) M4 `+ h) G
super(aZone);
$ u6 ^; D( q d list = new ListImpl(aZone);3 ]# ?! D/ O( N, b: x8 B. o
swarmSetp();
; j9 k g: i: d- c& Z/ l4 w actionGroup = new ActionGroupImpl(aZone);
$ h: B& C, M9 h" I/ r schedule = new ScheduleImpl(aZone);' X: P+ ?/ K0 l$ v5 s6 r- S
try {
" f4 }# p2 D5 b% Y: T Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 @' S- e) _ y* @3 x+ W3 r7 m5 m Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' f* M# d% b, H- o/ T: ~
2 L7 k" y1 |4 @0 a( |
actionGroup.createActionForEach$message(list, agentSel);/ R. l* X' j6 v3 M
actionGroup.createActionTo$message(this, swarmSel); Z6 _8 R) g4 f
schedule.at$createAction(0, actionGroup);
+ I& g A* m7 F" ]3 x schedule.at$createAction(1, actionGroup);
, [( @6 B, s# l* ~# G schedule.at$createAction(2, actionGroup);
4 A: A4 l+ t" B4 F. ^9 }, l G+ f" l3 N
9 |4 A k" Q% Z' a8 _9 ~7 |0 l } catch (Exception e) {( Y6 |( m0 j/ B8 \$ }3 ^6 i9 g- ^
e.printStackTrace(System.err);' y" s+ v5 j4 R+ x" k
//System.out.println(e);
9 S# D* A( U& ]8 W* w System.exit(1);6 u" A" A' O, O) i
}
& G1 x1 g9 P! s0 V+ S' c2 V& P# m+ k6 ~
# u1 c& v0 p; P6 o% O }: V7 V7 T8 q" q! V
6 O. r# x' {) t5 c2 C& g/ X9 B private void swarmSetp() {
. i1 ]3 e/ ~% }% K* d0 { u list.addLast(new Agent(Id));" T) Y. T# n& Z
Id++;
9 s4 n1 Q% x$ x8 f2 H* V, N! H, g }$ b3 N+ c5 [" k' g
* v* J" [* c# @8 G7 l' S6 \
public Activity activateIn(Swarm context) {
. p( I$ _4 B. F0 A, Z, z" m super.activateIn(context);! N0 w2 |2 o( {! f7 }5 t
schedule.activateIn(this);4 \1 P v3 s$ n5 U/ a/ H6 t
return getActivity();' I1 p" f" j4 e. N; x! @
}
. D3 ^$ m1 y( s$ q$ D! k6 b
# i3 C! g* x& v; M8 y& k public static void main(String[] args) {* A ?/ \1 P6 L$ J/ k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 N: h% Y j- O: j% I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 \1 W% c6 K7 X9 J swarms.buildObjects();/ a3 v! C3 {* U2 I" o o" M
swarms.buildActions();3 n+ q5 T0 R3 T- r) y6 Z5 D
swarms.activateIn(null).run();8 T0 G% v& v! H3 _# t2 e' u8 G2 m
}: @( c+ |" w P7 B. r8 s* i* s
) B$ e9 `2 N9 q4 p* Q5 L0 d7 i- K} |
|