|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) G& T, M" G/ E _/ B
' a5 f; R4 G7 [/ v( [( Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; @4 H% o4 U/ P$ P% H9 l+ a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 g: E, j. I, }" Y# t. ^
swarm.SignatureNotFoundException( Q* x# o' Z/ x3 p( P
at swarm.Selector.<init>(Selector.java:76)& l+ O# e- W0 s& ~2 F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' x1 x& ?; W0 k5 l& v8 G, n7 b1 G at ActionGroupDemo.main(ActionGroupDemo.java:67)0 d; k/ w" }& F! F- w, g) @5 e' G
) Q. ~( I' S3 H9 Z& Q) a+ s3 R
" E7 z% f+ [: o
import swarm.objectbase.SwarmImpl;
( u' I9 K- H* r; X, @import swarm.objectbase.Swarm;- a; O: I* z% J3 q0 Z/ d
import swarm.activity.ScheduleImpl;
. R4 N% N2 ?. ]import swarm.activity.Activity;
/ J1 x+ {' n X+ o9 q vimport swarm.activity.ActionGroupImpl;
# Z2 m8 R% m0 v9 Y: ?) s+ Bimport swarm.collections.ListImpl;
6 h M x/ V4 ]. F' y% Pimport swarm.defobj.Zone;
@1 W* w9 U# I# ~( H6 H+ j6 Eimport swarm.Globals;
& X" t. A4 e9 J) d6 fimport swarm.Selector;
0 W+ F' X& D) G% z/ c H7 a6 o8 pimport swarm.activity.ActionGroup; 8 s! W# m% b7 S! y6 d" h/ ?( U [
class Agent {. }0 [$ f8 P8 k. Q. T7 T
char id;1 W U' ~: T* S3 y J8 N
% D7 \4 u) y% l3 Y8 h- }9 s4 M
Agent(char id) {2 ^/ H. ~; a) E( @; [, t0 u
this.id = id;4 k9 Z d" V f* j, [
}- k- z* x# o! u3 N1 A
2 `2 @# N" `) E6 i public void agentStep() {9 U' \, S/ q0 J2 X; b
System.out.println(id + ":" + Globals.env.getCurrentTime());. M: ~' |( x, ^5 k! g0 n* g
}4 Y+ o# W% x8 Y
}
: w7 i2 g+ l7 `1 O) i3 J' g$ b# C9 F0 d4 ?
public class ActionGroupDemo extends SwarmImpl {
$ H3 e8 k) U0 ~$ C ScheduleImpl schedule;' S: z' d9 u' p" A8 D) h
ActionGroupImpl actionGroup;" q$ G; e7 r: R: [" X( P' j
ListImpl list;' P+ [, Z' r7 m! n
char Id = 'a';
2 I7 |& } @7 [* c, I$ b8 o* [" t) T, b3 F
ActionGroupDemo(Zone aZone) {5 l& W. C( i8 @& Z, ?5 j4 }
super(aZone);# j+ r" s4 D' b: \2 P
list = new ListImpl(aZone);
- R) E4 I. \. _; g3 T# I/ O swarmSetp();
5 g I8 j, O0 A7 O actionGroup = new ActionGroupImpl(aZone);: d8 B. \" V4 O4 N/ S' g9 t' \/ P
schedule = new ScheduleImpl(aZone);1 b. p8 j1 S9 c2 C& y
try {& m7 N- ~" Z1 r3 t8 B# a" H+ B
Selector agentSel = new Selector(Agent.class, "agentStep", false);
' v' |8 A6 x" I Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 Q, V w9 H* g# R
; F+ b9 M. @) }$ w- i3 W+ |7 M actionGroup.createActionForEach$message(list, agentSel);
7 n- R& x8 t. T3 N" F$ W) L% m# C actionGroup.createActionTo$message(this, swarmSel);
0 p- Y, [6 c, q& U schedule.at$createAction(0, actionGroup);
$ H" T1 i. ~; q' \# N- v! o } schedule.at$createAction(1, actionGroup);( |/ D9 u# K- ~/ K
schedule.at$createAction(2, actionGroup);6 O9 X, {7 u- O. Y9 P
# [" M. A/ J# y8 p1 o, p( p% b
} catch (Exception e) {
! i7 X- v1 f! s, g6 b: g2 n" s0 h; |+ O e.printStackTrace(System.err);
0 t$ f" }5 J2 ?4 e6 ^' s/ a //System.out.println(e);
1 f; b$ Z7 k- F System.exit(1);1 N+ A t9 G! {- d
}
! s! N/ `7 d% D/ E3 z
3 E0 [5 b Y4 N" {5 B
9 }7 s/ ~6 X# n* F3 `! }9 l9 ^ }7 g' N( ~5 w" M! e7 C" A
/ d6 p0 Z. J3 o+ S; ~
private void swarmSetp() {8 ~* q' g" g' [- E! h
list.addLast(new Agent(Id));
7 K( j) A" p) {& m! P7 v" {' b$ m+ ? Id++;" r3 G$ t" |; C( Y
}
8 {6 O* r! i/ z: u' {
- b* _( Z0 X8 W) Q# i public Activity activateIn(Swarm context) {
: H- ~( y! z* Y5 q4 v- `: [ super.activateIn(context);
3 {" a2 v l$ k/ B d schedule.activateIn(this);
! X f1 g8 p5 D5 g0 N return getActivity();1 {0 i# w' l c3 Y2 L
}
+ _3 g3 ~. C N7 t5 E, g( `
4 b8 f3 k8 w) P9 Z" K8 O j public static void main(String[] args) {
+ G4 b! `5 O- \. U$ `9 a* F0 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); b4 O0 j, u' c q, x8 Y+ Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* j' S7 \+ Y8 n4 G
swarms.buildObjects();. K2 P, g* \" v m
swarms.buildActions();& C6 q8 k* A# ~9 T
swarms.activateIn(null).run();, m2 J& v& C( A% L k
}
0 N3 V3 c+ a: j4 }( N3 k- c7 J6 r6 C
} |
|