|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ }& g% [) A2 b+ _0 K5 `. `* [& m* K& E. U0 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 x- o3 A2 S, y( J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* E& ]1 R* h4 O: `6 V" l9 Y
swarm.SignatureNotFoundException
# k7 m8 K; {2 [9 q at swarm.Selector.<init>(Selector.java:76)3 B' O5 c4 _# l& h5 A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 U" U: Q: t* E! o" R/ `; q/ J at ActionGroupDemo.main(ActionGroupDemo.java:67)
- D; r0 b; a% _) j) ]* u; b9 q
! j1 i. j( S( h* Z8 G& \
8 u* }" f, |# ?( o2 v3 Bimport swarm.objectbase.SwarmImpl;9 f5 @3 ?! Q n$ o2 ?" _) o7 i
import swarm.objectbase.Swarm;( |3 k7 w6 L- J% J
import swarm.activity.ScheduleImpl;
5 J+ y9 S! d& }+ J% _import swarm.activity.Activity;' {( O# e5 Z1 V8 E
import swarm.activity.ActionGroupImpl;; b/ z& T; X; K" T# x- G8 s
import swarm.collections.ListImpl;% T) W& l: j0 |9 P9 P! D# E
import swarm.defobj.Zone;
4 S/ m+ y1 {9 D/ o* q% @5 ~import swarm.Globals;
# j2 C, C7 w7 Iimport swarm.Selector; C& ?6 ^ A5 x" ^
import swarm.activity.ActionGroup; $ _: L ?$ c) |4 h% j
class Agent {
) T& r i8 _" J. z/ y0 N char id;: W; k; T e6 J$ Q: e
; G# P) t+ B. N7 s) e: z
Agent(char id) {* x+ v3 M+ b2 `/ ^8 A/ s, |
this.id = id;2 C1 \2 V2 j1 i9 U
}
* k' ?' b& j8 ?4 F
: \8 A2 M% [% S; B* T+ c public void agentStep() {9 D3 n) N8 P) l) R
System.out.println(id + ":" + Globals.env.getCurrentTime());2 K0 o8 D) H8 w, c( t
}
5 T! V5 E( E4 Q! a5 `7 L}- i8 M. \4 i3 S$ n- l5 e4 A+ Y
3 B& R+ V' q& ?3 R
public class ActionGroupDemo extends SwarmImpl {
v2 x+ v& l: o' \! w/ n+ [ ScheduleImpl schedule;
( s |5 d1 _- k3 U- V c$ L) S+ v) u ActionGroupImpl actionGroup;/ ` }/ S; `$ }
ListImpl list;! Y9 O$ r+ ~; q: ?# v$ S. I
char Id = 'a';# p) P5 M( P) h' K
6 J0 D4 D1 |% u* g& G7 i
ActionGroupDemo(Zone aZone) {
+ v: I9 _/ X4 c2 T' W# A super(aZone);
. m0 Z3 f% }. X7 _3 u2 [- T list = new ListImpl(aZone);6 k( T. y+ G1 ^5 r
swarmSetp();
. T& d3 N9 c9 c3 n2 M1 e3 w1 w9 ? actionGroup = new ActionGroupImpl(aZone);
9 x# L# p" Y6 a4 d schedule = new ScheduleImpl(aZone);% m. p, n! q% U/ \6 h/ Y* N3 i
try {
9 H3 W" e: |; j, j( _# e4 x, o' w Selector agentSel = new Selector(Agent.class, "agentStep", false);1 t+ C I0 Q# j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ W5 q& k. p' G4 a+ }5 y
9 v: s/ N% j( J! Q5 L. K actionGroup.createActionForEach$message(list, agentSel); @! P2 K2 u1 \4 N
actionGroup.createActionTo$message(this, swarmSel);
7 K/ O! j" H" A2 ? schedule.at$createAction(0, actionGroup);
- B! i/ z/ H ^! V; I4 e8 Z3 q( G k schedule.at$createAction(1, actionGroup);
2 @. \" s/ F4 v; { schedule.at$createAction(2, actionGroup);
7 H& } w# a6 i* h
/ r2 i' i6 o6 _. T" l0 J \/ p2 q } catch (Exception e) {
9 c) i- D: w" Q e.printStackTrace(System.err);- T, Q% P, b8 D- M. D3 M% r
//System.out.println(e);, b2 ~; i( T$ L5 u
System.exit(1);' X4 y# M- f5 a% d( p
}
5 s$ S! K" \; }. T3 j) u4 H) ~* t/ g; c# }
% s; S1 L8 o/ a: k# p8 J/ R6 N% M# G7 _ }! I/ j- h8 r( r0 J z h
) o" k( g: z, M' ]. {5 C
private void swarmSetp() { \8 Q# d! q7 b0 M
list.addLast(new Agent(Id));
! Z1 r9 R$ P; ]& }+ Q; X8 | Id++;
* ` r. h+ G9 t, y }" }& V6 d1 o" m. O7 D3 a; g6 z* o, |
( {4 J" ~, i& e2 V
public Activity activateIn(Swarm context) {
. Z# q8 S2 c- m: W7 P( f9 b super.activateIn(context);" u% n0 i" l! d( C/ I, _
schedule.activateIn(this);
. W$ D) p2 f& o; ^2 s return getActivity();# L, K# e9 B' R$ s- S' g4 L7 k$ Y
}9 v2 [9 V# a) t9 I1 R; w
% p9 _- Z+ ?/ E( m7 R/ _+ N public static void main(String[] args) {+ V" V/ e/ Z/ G3 I1 p% f0 _( j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 G# a% @& l$ Y+ h4 D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 D3 N3 ~2 B; _/ H. q) o: }
swarms.buildObjects();5 s* W0 c; R" E/ [% V! }
swarms.buildActions();
# y+ Z& h7 c. D( n$ V swarms.activateIn(null).run();: R* @& k' `: y9 u$ S Y$ [
}
* ]2 J; E* H, Y# z6 b1 z' ? B% B8 X* Y% c
} |
|