|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
k- d5 r( q M7 L3 y! ^
, ~) d; Z: z; K8 P# r3 Y" W* Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 y5 Z. s9 D2 w L- p, v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# F: D* `. Y- _9 G2 U+ @swarm.SignatureNotFoundException- [/ Q# j+ I7 E# w' E: f
at swarm.Selector.<init>(Selector.java:76)% w3 c3 `* l7 G& [) K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& v. w% J5 X F6 r. t+ @2 a$ K at ActionGroupDemo.main(ActionGroupDemo.java:67): D0 W- J! }6 g
3 p% C7 K" S* a
( ~( s) A7 M. b- E$ E$ A
import swarm.objectbase.SwarmImpl;
0 p' `& J7 W, y+ limport swarm.objectbase.Swarm;$ r: s: N$ X( a! j' N1 H
import swarm.activity.ScheduleImpl;
( f! o( s" I! ~4 @9 Eimport swarm.activity.Activity;$ D8 F9 v: m! Q }! X
import swarm.activity.ActionGroupImpl;
7 A4 [5 h9 _+ y8 ^import swarm.collections.ListImpl;. @- m2 I: ~( S9 Q6 W
import swarm.defobj.Zone;
; Z- Q# V4 F/ Nimport swarm.Globals;
6 j# u; l* e& G" N; pimport swarm.Selector;
$ g( n4 g2 B# |5 z k; [: ]9 h2 gimport swarm.activity.ActionGroup; 9 m/ Z& }" g3 w0 I3 i8 e
class Agent {
; Q' X+ ?& \0 k' }9 V4 D1 ` g char id;
# K. B6 W! h9 O! b2 {$ ?7 W( ^+ a4 G1 y% e
Agent(char id) {
3 [0 E! B9 v3 B( F) D this.id = id;+ {8 R! q8 `! ~4 I) s$ y+ s
}
5 N$ {( }7 B1 i% t4 @& u8 v1 F+ T! o& k3 J$ D1 d
public void agentStep() {
, [" V9 m+ o: C5 v! Z2 a0 T: e System.out.println(id + ":" + Globals.env.getCurrentTime());0 X$ \' Z9 h K
}1 M" v d( a/ h
}5 r) @1 F. ^* ^+ \+ o N( s9 u
1 Q5 Z! l- ~! N7 ]9 ^public class ActionGroupDemo extends SwarmImpl {' j% i; k4 U2 H+ i) N: z
ScheduleImpl schedule;5 x1 x7 d5 i# f: B! Z, i- _
ActionGroupImpl actionGroup;
5 R0 k: j# G1 n0 w# q( E# g7 } ListImpl list;7 x: S; @) o8 C
char Id = 'a';
" }' V! e2 ]$ U. l/ _8 Q# a0 e+ I, i: d
ActionGroupDemo(Zone aZone) {
/ R5 ^+ b2 z9 E% G super(aZone);
3 `( B q) w- G* S6 Y: l list = new ListImpl(aZone);
/ ?. b1 {9 B' E8 t+ ?) L swarmSetp();
( x; [9 L. n- N6 v0 y actionGroup = new ActionGroupImpl(aZone);9 ~* I; z& @$ H) d! E
schedule = new ScheduleImpl(aZone); A: K$ w9 Q4 Y+ X6 }
try {) t6 X# L Z: e& m
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 Z) R9 x/ ?, ^ @* r; ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ t2 e X) ]% a5 K7 X: K; e
& a( |0 J7 L) J9 f' h8 D actionGroup.createActionForEach$message(list, agentSel);$ }3 ^+ v( I( r( f; u/ H: a
actionGroup.createActionTo$message(this, swarmSel);! C+ r7 x" q3 X, |0 w
schedule.at$createAction(0, actionGroup);
1 D$ A; G! f9 H$ h schedule.at$createAction(1, actionGroup);+ I& |' B7 h7 z% Q6 E- a
schedule.at$createAction(2, actionGroup);3 H7 z# Z8 g) T# o
! m! r# }" h# t7 ~: K
} catch (Exception e) {% h5 K: p9 e" O- N& i: D' ~
e.printStackTrace(System.err);
5 W4 q; T; Z/ r //System.out.println(e);; K S4 @( y8 n( C6 F: _% k' y
System.exit(1);
$ d3 ~8 E: |; s" H }; \# q& R: R! l
( m( }% v" S9 [8 ~ e
R. R% f8 A0 q- D, J$ L }
$ c$ `! U C. H4 Q
* z- J1 Y' w5 H8 m2 p6 f! P private void swarmSetp() {
! f& L' [! H, `) d! v6 l list.addLast(new Agent(Id));
* D/ z7 | w! i% C Id++;0 m# E+ Q1 ?3 V( k' U( n9 U
}
) m2 z) G* S! C0 ^1 Q6 }
, Y/ I2 Y X7 a1 U1 H$ c public Activity activateIn(Swarm context) {& c" O! p P; X0 {
super.activateIn(context);1 a8 T% h1 W3 ~/ Q* E
schedule.activateIn(this);
; Y, V: z# V/ x& `+ d return getActivity();
4 a6 u9 g4 k, v; j } Z5 S" O5 A5 d, c$ P: i
' H4 H8 Q; S2 i R1 O
public static void main(String[] args) {! `( z! Q5 ~( W8 n! H/ X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" V, N% Q" _6 b" L2 k: S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 Z+ k- y" M- K1 L6 B% f( q
swarms.buildObjects();
. i* y& e* C* o9 G7 b. N: A' ~ swarms.buildActions();/ S* \/ K6 S6 h% ~# Y6 i6 q& E, P9 m
swarms.activateIn(null).run();
& V+ g+ l! i3 O' \ }, s; l# R1 n3 ?1 Y! Q( ]8 u
, V' R* K n% T7 i2 \} |
|