|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % r. G$ U) {" ]
; m- R8 N: Q% g, l, N# m( l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- n$ I) A1 t' n% Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# |5 [( o9 V7 B
swarm.SignatureNotFoundException
( Y/ E( D" C1 \ at swarm.Selector.<init>(Selector.java:76)3 R2 W( O: l y( d: V- v7 c* f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): `' ~2 v# e, A9 b6 ]# G j
at ActionGroupDemo.main(ActionGroupDemo.java:67)8 S2 S# W: W! m7 f
m' a2 P: _0 e+ e) k# M. J2 ~2 ^
0 ^8 }+ O( @ x3 e2 F8 Z3 z( [
import swarm.objectbase.SwarmImpl;
& f1 c7 u7 `' [2 kimport swarm.objectbase.Swarm;, {( ]$ \' i- a2 a5 V- r
import swarm.activity.ScheduleImpl;: T5 K/ d" ]- i& t" j; s( i
import swarm.activity.Activity;
: u j' N$ Q3 Z8 i3 s& Limport swarm.activity.ActionGroupImpl;3 j) X0 K. F/ s) _
import swarm.collections.ListImpl;+ A6 H8 P' T! |% J o
import swarm.defobj.Zone;
, A% e/ J0 `) F+ n3 mimport swarm.Globals;( ^# ^, J6 G9 x4 I
import swarm.Selector;* ]4 n$ K8 F& g$ L2 ?
import swarm.activity.ActionGroup;
% s5 W$ ]$ P2 A% Fclass Agent {
8 t$ @- x3 u' q% k) u) j* L, a char id;' L8 p1 U) H5 z+ a. |4 ]
; B" o) Q# L! Z7 J( |7 b& h Agent(char id) {. \0 [- G4 X" ]1 }1 i" h
this.id = id;
1 q' d# I& U3 \4 g1 R: J1 z }
% X3 v% z: X. o- n. d! ?- g0 B1 b3 T
public void agentStep() {
1 m) v! A$ H: {& M1 m System.out.println(id + ":" + Globals.env.getCurrentTime());$ i1 d/ r. e7 T/ P% t& q9 L/ W
}
' S! D+ j9 a# E& N7 j) `1 O}
6 Y2 V& r7 p0 ^; v, G6 O+ v4 C
# Z( e {, i, y5 ^1 cpublic class ActionGroupDemo extends SwarmImpl {
& V. I# ^+ G. X t ScheduleImpl schedule;8 D y% j; G' ]" U9 f
ActionGroupImpl actionGroup;2 B! R, Y# K( [! ~* l/ f' T
ListImpl list;, t$ s2 b v+ {
char Id = 'a';! M$ z8 T' a& ]. i& M
, K# i* e- j* F, U) P# }* a/ t! M
ActionGroupDemo(Zone aZone) {' R) M: P* S( ?/ p B& i
super(aZone);6 M' i, F; @+ k8 u7 }
list = new ListImpl(aZone);5 {, ~, c4 t: Y) \+ t
swarmSetp();
8 w3 E% z6 A) S0 C actionGroup = new ActionGroupImpl(aZone);& N* U9 ]7 y6 D2 G. Z* v& R8 W: O
schedule = new ScheduleImpl(aZone);' z" Z+ k0 r6 C
try {2 U* q n7 M+ e
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 n9 r" I" [, B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ v `" F" U# \3 J9 m+ I. {6 u
3 V: d8 `8 Y, {# |, Y* @* R actionGroup.createActionForEach$message(list, agentSel);4 i0 B' I. N8 J0 D
actionGroup.createActionTo$message(this, swarmSel);
: n7 n) G0 Z; t( O1 G( j schedule.at$createAction(0, actionGroup);
5 t: ?% ]& _9 [9 h) r" H% C+ D8 Q schedule.at$createAction(1, actionGroup);
" h6 D; e3 S8 }/ ?# K schedule.at$createAction(2, actionGroup);7 E! s% E7 |7 f0 |( {
- C: c" C' {" X } catch (Exception e) {7 I' _- o: l, E
e.printStackTrace(System.err);
' T5 h# V* A3 }2 a. ] //System.out.println(e);
# r& V. N x# ?- @$ e# [ System.exit(1);
- W9 Q g0 `. p- k/ M# \ }
. ?" S6 v! R3 Z0 r
" B) s B# k* L+ @1 v5 ?' F% ~2 V/ j# K+ T6 l5 B
}
6 F& ]; J( R/ N6 i8 Y8 F4 c4 J) } N& ^! S+ s0 t- b( [# b
private void swarmSetp() {
: U# `. ^3 M2 H9 B list.addLast(new Agent(Id));
( Z+ C2 s% H! a. u" E Id++;
+ W S; R" H/ O2 C! s, K }
( N: ^' a6 T" q" D6 z/ ` L
& d1 c! s: I a& y! f @ F public Activity activateIn(Swarm context) {
' m$ D4 e' s/ r: c; u4 n super.activateIn(context);
1 o/ Q2 `6 }9 W; L8 }/ A, M8 b2 C schedule.activateIn(this);
) i+ M- N4 H+ W- q2 V9 n return getActivity();1 l7 v# D! }, I) N1 I+ L+ Y& w, b
}, Z# J. x. f3 z3 @9 E3 T: B
6 l# e3 i) X3 h+ s! m% Z" m4 r
public static void main(String[] args) {
; ^- h4 r2 A6 g/ D+ j! s. P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 X, Z" p( E. G9 g
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- K) _ m0 Q# r) C, n
swarms.buildObjects();. g1 j1 X/ z! j3 q& w" y
swarms.buildActions();
) g( n8 W0 o- ]0 j# J) X) |3 m swarms.activateIn(null).run();$ Z0 m8 Z W1 Y |$ ]
}
( D+ l, m& o2 S9 x0 `( ]
3 O: e. h1 P) r} |
|