|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# F! y9 D3 R- [4 l. F
+ l' \- ?- i) W3 P* [% O6 c% x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: d, ?7 V$ Z8 h5 ]9 u$ T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# }! p6 u- \1 Q" U& J8 x
swarm.SignatureNotFoundException" J" X! ?& G9 m5 q9 r. t
at swarm.Selector.<init>(Selector.java:76)
9 q! v# G/ [ X" P" ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 r7 O. _$ `3 g" v6 t at ActionGroupDemo.main(ActionGroupDemo.java:67)
Y; J. ]1 q6 w7 S1 y$ o+ H. N7 I; {0 m6 r
; S/ b; d: _; l9 nimport swarm.objectbase.SwarmImpl;1 d- R6 r3 J( I" e$ v8 k! X1 t- R
import swarm.objectbase.Swarm;
6 f: d! T' y' F2 ?! r& \import swarm.activity.ScheduleImpl;9 p* c9 t8 G7 \- @9 e- g$ c# C
import swarm.activity.Activity;% u* k9 ~" k# M( K I9 v u' {
import swarm.activity.ActionGroupImpl;+ C) O) f1 q6 G8 u9 n: R0 {
import swarm.collections.ListImpl;
/ [9 ?$ I% z$ e* r8 ]! v7 Zimport swarm.defobj.Zone;
! M: e3 j6 w) F3 ?$ n4 Dimport swarm.Globals;
$ J# {. s4 l( I3 m, aimport swarm.Selector;0 i* \: I% D; u' C
import swarm.activity.ActionGroup; ' q; v) k8 c. D* o7 v5 E
class Agent {
, g: I* K! g6 }* ^0 _ char id;
8 _/ R) T, I& C0 ?( Y- P
( m/ x; G- }# } Agent(char id) {
/ x9 m" B! W" t- l this.id = id;
4 U8 D( g1 {. y8 j$ Q }
' x$ m; g8 S3 b% W' n# R P! F9 Z9 M, G; r3 S- v8 ^4 T
public void agentStep() {
2 F) a ~+ ^/ H* v System.out.println(id + ":" + Globals.env.getCurrentTime());
+ A" w8 R. v- r }' j! w; O/ O( t0 v- }3 V
}
1 f4 J1 b" X( a( g9 t& O7 I1 ]3 n) c. z9 X! h
public class ActionGroupDemo extends SwarmImpl {
8 L. W) D* J% U$ F$ @0 Y ScheduleImpl schedule;% t0 B9 {/ N) i" e6 X4 z. X
ActionGroupImpl actionGroup;
- e! Z& R8 u$ } s( T8 T# P ListImpl list;
! K) M4 m+ H+ j' ?( ^ char Id = 'a';/ ?! c( s& m! Q( T3 ^( }
; {# U/ _( U3 U# d
ActionGroupDemo(Zone aZone) {
, L$ Y# m" F7 r3 \ super(aZone);
5 v0 e) @ i8 M+ } list = new ListImpl(aZone);! |9 I- p8 F+ T3 K. E. B
swarmSetp();
7 y) m* ]* u& X; w: | actionGroup = new ActionGroupImpl(aZone);& `' z2 z# C( [/ z
schedule = new ScheduleImpl(aZone);
. o: Q2 m, i% A) R! A4 i5 \ try {
6 w h0 _3 |5 q$ v Selector agentSel = new Selector(Agent.class, "agentStep", false);# j; p6 D/ {% O* S a5 c8 k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) I$ `1 F. N: Y , j# t; s. m- u1 T. B- ]% r
actionGroup.createActionForEach$message(list, agentSel);" p5 M* o! |( |) \% j/ E: b% d6 ?( g7 G
actionGroup.createActionTo$message(this, swarmSel);0 h* ?( _/ b t' q- {; f
schedule.at$createAction(0, actionGroup);7 j8 h. ?, y9 c3 B
schedule.at$createAction(1, actionGroup);
, d" P( ^' P& c2 x schedule.at$createAction(2, actionGroup);
5 ^6 x ^4 s5 _. D7 g. D% \
4 B( f+ w" J& D7 T* ~3 S } catch (Exception e) {
* Y5 x# q1 F; X w e.printStackTrace(System.err);
# Y+ ?: U/ D+ c4 M% S) f0 ]: F' y //System.out.println(e);
) q+ B: V! Y! ]2 t" w: O System.exit(1);
4 s# ?# Q4 n6 [; p; d }% j, B3 V( Z6 r# E- ` D" I; F
2 n5 g9 j5 ]9 ]3 m& j( m
, j2 m2 L& N; c7 @; [0 `- P8 y
}
4 V* H m* E! n3 A y
5 _4 S5 T( S" e# Q4 F$ W private void swarmSetp() {
7 p" P9 O7 W) \- s; p1 i8 B$ Y list.addLast(new Agent(Id));
( H4 A3 r1 G" J* x Id++;
1 u6 m5 _1 E7 ^6 F( O+ ` }
" n) \1 V' f, p8 b8 w I. [6 y J: e5 p, W) ~
public Activity activateIn(Swarm context) {
$ [# Q! B/ y6 Y) b' E( | R9 O super.activateIn(context);0 R* u: a" r! d* L% R* Z
schedule.activateIn(this);) U* m4 r4 _. U# ^- T: l$ t+ B/ L
return getActivity();
7 t# V/ b$ k! j1 H, z }
6 o( F: p& P g
4 _" c2 k# o/ F public static void main(String[] args) {. A: J: s: P6 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: B" }! I5 ^ p: v& M Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% H5 w9 A9 `+ E: z6 f3 [6 k swarms.buildObjects();2 M* v6 [, c' X$ ]" E
swarms.buildActions();. Q5 X, {2 V9 I8 o ]) M
swarms.activateIn(null).run();3 h% [9 }* g' a% Q6 X
}5 I+ c( @6 z% L5 k: I" w
3 \$ W" W [; w+ _4 i" z3 ]' @2 M
} |
|