|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 d( |' ^1 \7 j4 c! Z+ p% e( J/ c# i! {8 J' I, s2 n* N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 Y9 h# g- P( F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. s7 Y' ?. G; B2 Z
swarm.SignatureNotFoundException( ?! r2 i" U% |
at swarm.Selector.<init>(Selector.java:76)( A4 O7 `: h4 \( O$ V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' a* h# d6 \- [- k: q9 \ at ActionGroupDemo.main(ActionGroupDemo.java:67)( [4 `. [3 [% \: t# v7 H, r
/ @ K6 B; ]5 L4 P$ c7 o, S2 \! ?
2 Q! ]; E0 C$ X# x- |) c
import swarm.objectbase.SwarmImpl;
) ~, O! j _$ v9 Zimport swarm.objectbase.Swarm;
1 q4 N" m! a. Aimport swarm.activity.ScheduleImpl;" k2 U4 ?" ~* F4 j; k7 e
import swarm.activity.Activity;$ ]4 C. N1 J* i1 [' Y, Q& O0 B2 p
import swarm.activity.ActionGroupImpl;3 S3 E* h7 n# {: ~5 }
import swarm.collections.ListImpl;
! L, |5 b! J) J* l a( J( Uimport swarm.defobj.Zone;
; g; c1 O% E6 l0 U; ]import swarm.Globals;
7 |; O- p/ K$ }: N/ aimport swarm.Selector;0 `/ Y; f: f5 t' u" A
import swarm.activity.ActionGroup;
; f' c4 A& {1 g+ S# L' ?class Agent {4 \ o9 w$ o2 N9 w* `
char id;* M2 S8 K' }) m: @0 Y9 ]
+ }# I. B3 N. ~, j) o G: J9 d Agent(char id) {
# V w! t4 F( r6 s: `6 z, ~( } this.id = id;" |2 [4 f0 I C8 I% i
}
; t& e% |0 r# ^! w" g* g
* V* V: S! w2 E public void agentStep() {/ A% ]# ?3 j" V ]' { W- G
System.out.println(id + ":" + Globals.env.getCurrentTime());
, X R: b8 u6 s9 e. h/ i8 k8 R# h$ X }
J1 C7 W" {+ z k; X}; M2 H; j8 Q( K8 S" F
! ~: I3 J( |* I: z8 K9 a2 y6 X2 U9 s
public class ActionGroupDemo extends SwarmImpl {
4 f: ^: p- D. Y8 }. e. F. m$ I ScheduleImpl schedule;
; l$ q; ~) r! C n% n3 D, t# ^0 G5 s ActionGroupImpl actionGroup;! `8 l! q- _# j9 R
ListImpl list;
8 t k5 J) Q$ d$ @( y [ char Id = 'a';8 o/ E7 B& r: m! _; P' `% @
& X: ~0 G6 S; O1 a* m3 u
ActionGroupDemo(Zone aZone) {& w' _7 l) p* J
super(aZone);' y' w4 S: ?9 X2 u, u& O
list = new ListImpl(aZone);
2 H9 U5 e T d% g swarmSetp();
6 M, V! v+ V7 P t0 u6 x0 A actionGroup = new ActionGroupImpl(aZone);0 n( Q; O4 \7 r, W/ Q$ E
schedule = new ScheduleImpl(aZone);8 O& @' @# J" M4 m! x8 l& @
try {
$ j5 E, E' y0 g. y, N6 a t( m9 R Selector agentSel = new Selector(Agent.class, "agentStep", false);
! | o* _# k6 U8 k" e Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ p0 y2 C2 e; V6 i& e
0 \; E) A" P9 h9 u9 u actionGroup.createActionForEach$message(list, agentSel);
* F/ D9 E4 |$ O7 }, p& O actionGroup.createActionTo$message(this, swarmSel);. \; ]( f6 ^/ H! V+ O& i) p* e* j
schedule.at$createAction(0, actionGroup);4 x( K& }, L4 \7 G5 a1 K8 Y
schedule.at$createAction(1, actionGroup);4 T5 S; B+ v, u$ h+ S, \. Y9 u
schedule.at$createAction(2, actionGroup);
: u0 i: [7 G% j9 B* | c- K8 j# |. ~. O- Q' a% @" O$ S
} catch (Exception e) {
' h0 ~' c% F0 p t; ]: O e.printStackTrace(System.err);: r/ g% B% d+ Z
//System.out.println(e);) ~) l; n: N& Y1 l' \/ s
System.exit(1);
b1 T" u/ ^' L2 Q$ f6 ]* O }
5 s: x7 ?" b3 ~. r! F' `. c3 h" c k: _& @
+ v1 J* b8 F: m5 q$ a- f5 j" U }: b1 G, E k: b( a; f/ r+ R! k- P
; c9 A7 _- z+ g& `+ r6 d
private void swarmSetp() {3 T0 c4 B, d4 T. X
list.addLast(new Agent(Id));
. s$ F# ^$ C2 G# W2 V Id++;
$ P `& \5 J- v( J6 K& L }
4 {! S3 j" K8 [4 O% n
4 N4 h: e9 M& n" Y9 E& N public Activity activateIn(Swarm context) {
% J; V. f- W% a# M1 ^$ O+ f super.activateIn(context);
" t7 x6 J9 j8 j7 O6 i schedule.activateIn(this);
- [9 o. S% [# j' N- c3 k) q return getActivity();. g5 C" R# }7 Q1 B. D
}5 u9 K8 e/ c4 t& O
; i n9 E) G' K, q& h+ v
public static void main(String[] args) {/ d& u1 A5 S; y& ?
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# y. ^. s% ?# y: O( E# @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# {- R/ i% N K/ L0 \) B) X8 P! F# W' B swarms.buildObjects();
) I2 @) T" O3 y swarms.buildActions();3 S0 {, t$ I% `! P/ y7 |
swarms.activateIn(null).run();
5 Z* I, Z( g- V3 i6 p& \; l! v+ G }
& l) B# g5 }. m% Y
# Y {1 [/ ?9 ~' h} |
|