|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. h6 u1 `! `+ ?2 C, A1 B R: ]9 a6 _( B4 s" |/ d( x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ V1 l& i1 l8 M! k/ G4 d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! r9 Z5 j% O# l' @
swarm.SignatureNotFoundException
+ ]0 a: n1 }$ q' ^ r at swarm.Selector.<init>(Selector.java:76)$ L$ j5 S- y% c0 t+ T% i9 ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 l+ n' o; G% e, p, F4 }. P2 b
at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 @2 h3 D# L& u2 C
/ K6 W8 N5 W2 \, }/ e
9 y* A% G$ x% T H5 l+ R5 B2 _( iimport swarm.objectbase.SwarmImpl;
% ?7 ?1 p5 P2 G0 c2 bimport swarm.objectbase.Swarm;, N& V# c% j5 s6 @! l% u6 {
import swarm.activity.ScheduleImpl;
! U" A Y) o9 A* ~( m qimport swarm.activity.Activity;
" C+ H, \8 z, J; n7 A: Fimport swarm.activity.ActionGroupImpl;& d. Y L. Y$ T3 a; w+ F4 j* t: w
import swarm.collections.ListImpl;
6 i8 I" i. G* [6 {import swarm.defobj.Zone;
; W t }2 f! u/ Z8 Y- a$ }3 fimport swarm.Globals;
3 I& \! N0 N" k- B0 {import swarm.Selector;
/ L; J& r" E! G0 J! s& N* oimport swarm.activity.ActionGroup;
5 Q" y' R- G" p h5 L* }class Agent {- ~' S* |$ n1 z" S; N+ T p/ Q6 k9 `
char id;
4 t7 h+ t/ F8 x# e
2 u3 N2 |: r+ c8 o3 {$ v' j. m Agent(char id) {9 ^% W8 v+ V7 n
this.id = id;
# f* Q" u1 B1 j2 {. p }
# R: `; z5 \2 [0 ^+ o
8 g; Q9 J, p0 O: | A# S! L( k l- R; I public void agentStep() {/ H' _ i% l) E: z& A
System.out.println(id + ":" + Globals.env.getCurrentTime());
2 V* S1 v& d: b6 @; E; O7 } }4 `: J u9 D& D: ]
}
( }/ L$ O: z0 U0 |
z% ]3 ]. Q) `. f' |9 q8 {5 l* hpublic class ActionGroupDemo extends SwarmImpl {3 s2 S, V6 H6 q& V
ScheduleImpl schedule;
3 P" b) n" ^1 _! J- r. X ActionGroupImpl actionGroup;
+ W8 w/ k# U$ v' C, O+ T9 [1 L ListImpl list;' D' X( z+ Z8 D1 d6 b+ D: W0 c+ Y
char Id = 'a';* T) {! g# O% |, |
9 ~8 @: x; I; f4 N1 T! C ActionGroupDemo(Zone aZone) {0 g* A9 @! k0 a- K3 c' M4 q, K
super(aZone);
. W8 L1 J: M6 M! O7 o list = new ListImpl(aZone);
8 E. J7 ?, a+ \, ^% P& U swarmSetp();. w% Y, @' G" U* L8 ?
actionGroup = new ActionGroupImpl(aZone);
/ g: [" ^& V/ u0 e/ y schedule = new ScheduleImpl(aZone);
! j3 S, u3 U s5 P7 p) d4 E try {
$ l9 @( g& o/ A% E* w/ c$ h6 f' Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
. K; B- C$ U! j u$ A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& S# [9 D$ u0 L* X7 f5 c. v( T 1 u9 S# q' z8 `2 R
actionGroup.createActionForEach$message(list, agentSel);6 k, j, C; X% e9 J$ L
actionGroup.createActionTo$message(this, swarmSel);
$ t7 T6 L6 ~, B0 l3 A schedule.at$createAction(0, actionGroup);
) |9 ]6 D x% w/ p( V2 [; D schedule.at$createAction(1, actionGroup);
& c4 ^) x& z7 L C0 ~8 f schedule.at$createAction(2, actionGroup);: @" C5 G$ d9 J, W S1 ~% F
9 }$ h7 |% V7 a! I7 H) k4 k6 B) w
} catch (Exception e) {: } h7 u% D2 J. w, U2 P2 O
e.printStackTrace(System.err);
% f9 P& o$ E) M; } //System.out.println(e);
$ I3 D* ?% T, b System.exit(1);
6 J& q# }$ T% F }
! \$ k; n1 U+ x8 O3 V# V1 _2 v, X$ ` _' \
s0 U0 y' M0 Z) k8 i
}/ p1 }6 o# B5 I/ W5 V
& G5 N' j1 x4 r) o; A
private void swarmSetp() {0 A/ ]3 x2 z8 y3 r4 [* g
list.addLast(new Agent(Id));
# {! B* c. [& y9 V+ v Id++;" o* D' P0 [ |9 }1 z5 P0 u
}
2 S. f" |/ j3 W+ ^5 j3 z, ~ {& h1 |3 [, F; @/ M* e
public Activity activateIn(Swarm context) {+ d4 S$ {0 p" _; T4 ~/ v; T
super.activateIn(context);
) G& D" b" E- M, c: s3 A2 R/ S# G schedule.activateIn(this);
9 K: {' `8 l E6 T6 S2 C9 O return getActivity();
# s; W% q) Z5 D9 u2 U, g) U }/ F% J1 A- }3 h( ^( S
! Q k1 a) B( m5 @: o& {* x: Q2 L# q public static void main(String[] args) {: {5 Q* n0 b' Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: }4 I" A i; m, J/ I8 `' X9 ?
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 T' b3 f2 J. i' D
swarms.buildObjects();
3 Z8 L! \+ h9 n# d% p swarms.buildActions();8 u$ P: v6 O R( y5 n' T
swarms.activateIn(null).run();
& E, U9 x2 D6 G" n% J8 R0 G, g }
" p g$ i& s% I& X4 k. u- ~% Z% h& U( f) ~5 T+ H
} |
|