|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, W" @# y& y& K; X: e' p: g! p% J! m. V' p' H/ \( _- P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ h1 b+ [' b. f* z/ d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( i: }5 j8 f, c" m( p# h" R3 R
swarm.SignatureNotFoundException" u: r7 _1 g$ u
at swarm.Selector.<init>(Selector.java:76)
P' z/ M/ B! F) s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 O) T4 O; s8 d, y8 L3 q* z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 a; T' ?! _; R, G! s
* X6 l5 ?( ~. Z4 c9 |- y
- B3 O# F; D& m5 p m$ k4 {( ]import swarm.objectbase.SwarmImpl;9 a) t8 ~9 C* z, o
import swarm.objectbase.Swarm;; s! I7 b4 J. D0 w
import swarm.activity.ScheduleImpl;
& e$ k2 O0 l7 `- A6 X0 Q$ simport swarm.activity.Activity;
0 u$ C) B' ?$ @. F6 D y `& gimport swarm.activity.ActionGroupImpl;
% O0 v% S; Y! E% Uimport swarm.collections.ListImpl;+ A0 `; Z& X' s/ n. r
import swarm.defobj.Zone;
$ f4 I2 D0 P7 s' i6 ~4 j- Limport swarm.Globals;: n4 g+ g! _1 X$ l' f) ]: C
import swarm.Selector;1 D: B& c1 Z j. c1 {( f9 b
import swarm.activity.ActionGroup;
6 H: O0 h9 |. Y7 u( A5 g# {9 t/ b9 s" {class Agent {. \1 o7 @6 \( D1 H& V" k
char id;
0 s% f9 E I$ F. T0 o# I
, ~6 e' d4 j6 `* A9 @5 v Agent(char id) {
7 i; u& ^1 f0 L this.id = id;
6 U& g7 m2 h" J }
( z0 p$ b3 R. x2 P0 {" p1 N) b. `/ L3 q# D( W c V
public void agentStep() {
8 O& C+ r* {% n6 N System.out.println(id + ":" + Globals.env.getCurrentTime());/ ]2 n2 G+ }& h
}
* m/ ?7 c3 C' K}
; u! n- r% X( U; o9 t
7 y2 ^4 t* i5 Y1 O- q4 B8 apublic class ActionGroupDemo extends SwarmImpl {
; c# m& n1 g6 v- ~ ScheduleImpl schedule;0 t8 j) L* l0 T" h3 L1 M! ^/ n
ActionGroupImpl actionGroup;
1 v* U. m' \8 T ListImpl list;) _; Y9 y3 P' R
char Id = 'a';. e6 r+ q. f2 Y7 L) F8 l* G+ D, ^' _+ D
- x0 ] r: F5 g' } ActionGroupDemo(Zone aZone) {+ T* c/ O& w3 N, s
super(aZone);# Q- O. r# \$ ^+ _# M+ f& N
list = new ListImpl(aZone);
[ T" {; Z1 j3 B. A swarmSetp();
+ l2 ?! p \$ y% N6 a& _7 z! k actionGroup = new ActionGroupImpl(aZone);/ c: y6 ` ~7 [0 g: i
schedule = new ScheduleImpl(aZone);
' I# V7 `7 G H7 m& B- A9 g8 Q try {
& F: H! _- J+ e V6 h* L Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 n; e) L8 E& c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ X: V I" U7 s
% Y% N8 `" v! c actionGroup.createActionForEach$message(list, agentSel);
- p: b- D% E4 R5 E$ s! _2 }: `' N% L. R actionGroup.createActionTo$message(this, swarmSel);
* Z1 L% e/ F) e$ K schedule.at$createAction(0, actionGroup);4 ], g6 j1 X+ J z) j( j7 ]1 ^) I+ ?
schedule.at$createAction(1, actionGroup);
! i8 p- L& | f; c2 E$ a; U$ i' n schedule.at$createAction(2, actionGroup);" n/ U$ ]$ c8 l2 Q0 I9 h, O+ h
, ]! I k/ X. S6 q4 r$ A } catch (Exception e) {& L0 u* p5 ?/ R$ {" j! k' k5 q
e.printStackTrace(System.err);
0 ?) M/ |7 O7 B, w( r! |& L //System.out.println(e);" m$ {9 b* B; |' C& i! N
System.exit(1);+ X- G5 g6 ?# t* y2 [! M# D2 w9 _
}
& \& Q r% a' \& c
( K: \2 W# H$ o: |1 F; W6 u1 L, ~3 L
8 A9 O% Q8 F4 R2 H }
* z" Y( L O' q$ @- Q# I; ~$ y) [# e) h% X# A
private void swarmSetp() {& l! D" \0 z4 x1 t4 d
list.addLast(new Agent(Id));
; R t. v$ p: S, q( p Id++;4 \4 s' \. @9 e8 |: ~/ G
}
1 \# t4 K% Q$ ^; s6 m9 H% o, a2 v3 i, b/ f6 z
public Activity activateIn(Swarm context) {. N1 q F# r8 t% }: V B4 |
super.activateIn(context);; B6 b; Z/ ~' B2 C& E
schedule.activateIn(this);' B- l, O+ @& k8 A$ s
return getActivity();: k" @3 e% b# B1 p% J6 ~# n
}
0 ^, `- Q& p! Q/ z6 C% x
' ?% s" X+ L& p8 d6 }% Z public static void main(String[] args) {' _6 g+ t7 _2 ]/ C2 f% c: c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. n+ g3 C& K+ p; @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 e4 Y3 ^/ X, ~7 g0 z; K0 [
swarms.buildObjects();* A2 D R' z$ t6 E1 @9 e
swarms.buildActions();$ @; T! Y. G, {+ N
swarms.activateIn(null).run();% \9 F$ g/ @; l9 e: [' k
}
0 v5 G9 G1 {5 ]. T3 y% U' K! v" d: u5 c4 i. |/ v2 q, E$ [+ Q [
} |
|