|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# x& G% V, U9 j* ?- d9 S/ d; P8 c$ b Q) `) }) ]( u- a: u# n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% p* c( G" ]* o. T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: z9 d* b' X5 r5 eswarm.SignatureNotFoundException
Z& s* S0 o* Y at swarm.Selector.<init>(Selector.java:76)2 f1 M4 ~2 S7 J( X& y8 q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* {9 Z$ s; q: t: @/ r, { at ActionGroupDemo.main(ActionGroupDemo.java:67): N) F# u! _. E5 ~/ B" w, B: n8 U K8 w
3 D! ~! h, A6 l( [4 E4 U: g
$ x& o- ?. W) ?9 M" {: @import swarm.objectbase.SwarmImpl;
6 G0 n# d( n& @, A, e. Bimport swarm.objectbase.Swarm;3 r# i7 l) ~% l8 \8 Q' Q
import swarm.activity.ScheduleImpl;
4 |5 T9 d' m! r; R* Uimport swarm.activity.Activity;
3 H" z+ [9 l: {* i/ Dimport swarm.activity.ActionGroupImpl;' |- r4 M' K3 T: e% F* w
import swarm.collections.ListImpl; D& V# Y( G* b
import swarm.defobj.Zone;
& j0 K- U# F4 z; ^/ C# ~' g# R. Rimport swarm.Globals;
6 ^# i9 c& m/ q; r) ?$ T' V; nimport swarm.Selector;
P0 S+ }& W% ~. A- f2 F1 X. \' Zimport swarm.activity.ActionGroup; ) p8 n6 S% ?$ a, B. ?( L# B
class Agent {
' C: K) f6 T2 S" o char id;
# g% o% b' U. m" B' j" ]; `; A, z V3 [& J
Agent(char id) {$ P/ h3 h+ X! B; r* W9 s
this.id = id; K4 d0 c- s8 C) Z
}
' z! s2 Z& F6 e* o
1 m4 J O4 {; i: E9 ^9 L public void agentStep() {
) O! f% w0 c( B5 S; C& F* r System.out.println(id + ":" + Globals.env.getCurrentTime());
6 V5 }9 W5 N, K" B. f. d# C }! z5 @5 `+ R8 }9 K) j& s+ V
}# E9 L* Y2 f+ x- @% A1 B
+ o* }& f6 U$ X" r
public class ActionGroupDemo extends SwarmImpl {
w* e! j( W+ r2 B) L9 b% ] ScheduleImpl schedule;9 Y; X: E1 X2 T% Q
ActionGroupImpl actionGroup;
/ I8 l- s [3 U u& b) y k ListImpl list;' F, U8 Q o# t! R' i. N
char Id = 'a';- ]2 [5 h: ^. s9 h/ H7 H1 `" H4 z
d1 q. ~0 H l- A$ r x- }
ActionGroupDemo(Zone aZone) {
X3 c9 e, J& o( [# o' J super(aZone);
2 R1 z# Z! Z+ z i2 O0 V7 ? list = new ListImpl(aZone);
, {) ]/ d: ~' W/ F' d swarmSetp();. |4 }% m ^* P
actionGroup = new ActionGroupImpl(aZone);8 ^, l7 \: } T6 w, k9 R
schedule = new ScheduleImpl(aZone);
& M* I4 l; c, C; g. e try {/ w- {# l/ q4 M H
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 u1 t6 g" ^! h" z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: S, T6 d: U% Y$ v! L
. r' l9 ~% X0 ~9 N actionGroup.createActionForEach$message(list, agentSel); l I: Y* I* c* Q
actionGroup.createActionTo$message(this, swarmSel);
0 l. A" Y) i+ f schedule.at$createAction(0, actionGroup);
* Q$ I+ B" k# w6 E3 n4 ]: D schedule.at$createAction(1, actionGroup);
8 @9 t" d V/ U p; Z, D schedule.at$createAction(2, actionGroup);$ S( F2 G0 w% h2 y& C
) |4 q4 k! m0 l& y; o } catch (Exception e) {
2 |! I- J. I$ u- z3 }; I e.printStackTrace(System.err);
8 R2 D! @( c. s- M) A: H7 s //System.out.println(e);
# I3 }; Q( W4 _+ ~5 p) ]# S System.exit(1);6 D c; M. S0 |! T: C
}
( z2 s5 G* {* b$ `
+ n8 L4 m8 W. Q) W
r; x8 I9 ~# N# T5 A }
+ @! P6 Y, F; E9 b/ Y5 q
& [1 r9 J) `' j, @) b private void swarmSetp() {8 X. {$ V# y- n* L4 ?% G
list.addLast(new Agent(Id));7 E* W& f$ J! x" {1 f# [
Id++;
: m F: V/ |) [ }
& y/ i3 U+ A& k6 g- l' U7 ^# u% S% H) d, x( }
public Activity activateIn(Swarm context) {( @4 H4 \# r0 [
super.activateIn(context);( g) T. i0 H6 e c. }; I
schedule.activateIn(this);
) v* e: c, a( ~ return getActivity();( p* L% J5 Y* L+ |
}
! @# y% Y6 X6 i5 Z- K$ Y% m
- v9 C, s: [' \$ O* ?3 N+ W$ C7 y public static void main(String[] args) {
7 i$ ?. R/ _9 S* r4 k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- c( i5 I+ `0 K: @% }4 f Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& {# c+ j! i. }
swarms.buildObjects();
9 ^% Y0 U: ^4 Y swarms.buildActions();
/ W; d/ x' M) \; ] swarms.activateIn(null).run();
- Z' ?& d& `" ]7 w9 E, @ }
1 I4 O# P5 v2 v* h+ X5 X0 B, n$ k
1 J& Q& Z' [1 o! z6 C d} |
|