|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( V; w! Z: c" \
: R5 I- y/ j. l: |# `% V# D& v) A1 ~) |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 J- |* A, F o7 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 ]6 J* i C/ \+ V2 f/ c9 K4 c' x- Y! w
swarm.SignatureNotFoundException
! H5 h. x- T$ K, v1 P at swarm.Selector.<init>(Selector.java:76)
/ f+ o9 ]( E/ V/ ]9 V3 Y5 s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
` Q' m( a9 |4 j( h+ @ at ActionGroupDemo.main(ActionGroupDemo.java:67)
- w3 \' d: S2 \6 g6 ]0 N! K
2 e4 e) w- ]/ c* ?# k I& H j) U: o; ~% U G" o# `# B
import swarm.objectbase.SwarmImpl;2 x+ R9 W& A: f9 _+ t5 p! ~, r' A
import swarm.objectbase.Swarm;0 n- M" G: X) {% W. o) w
import swarm.activity.ScheduleImpl;/ h: L1 |# t6 _# c/ b0 F. ^
import swarm.activity.Activity;" K* ^) L5 g+ T g- g& L
import swarm.activity.ActionGroupImpl;
1 y! @; } F' Aimport swarm.collections.ListImpl;( {: I- G' d$ f. m0 U$ c
import swarm.defobj.Zone; & i& b$ P9 G' C; U; Z
import swarm.Globals;% O( ?+ O; L8 |+ b0 a
import swarm.Selector;. `2 @9 \4 g0 U2 T) s
import swarm.activity.ActionGroup; 6 y: V2 V% Q( x; p! Z
class Agent {
3 @2 L% c; [+ I+ J. ? char id;& Y4 u& s$ ~" Q2 \& D1 t: J2 q: f
+ _/ u2 K& }& P# d
Agent(char id) {% o5 Z; ?' k3 q6 \5 }/ h2 x
this.id = id;% d7 j! v5 \, I; B0 J' |) e; I
}- A5 w8 [6 A: H. F# }& G
4 X" K# N& j, Z7 `& x, e! R
public void agentStep() {: T' l7 o) O: W# N1 J1 E8 f5 D& O; D
System.out.println(id + ":" + Globals.env.getCurrentTime());! A V9 v/ H1 ^) g& c6 F' ?
}- Q1 q N: D( {' C) }6 `
}6 K" u/ S9 S, X- A
9 U" L( Q" m* e2 k4 Tpublic class ActionGroupDemo extends SwarmImpl {2 o' w2 h1 {! k- W
ScheduleImpl schedule;9 q' ?, z6 @2 j$ a2 \/ z \
ActionGroupImpl actionGroup;
6 ]* B" P" Z- }! a" P \5 ^9 i! N ListImpl list;
' c9 A7 d) c' I. X; j9 ^* X char Id = 'a';- T9 F7 [ A/ x9 Q; ~( K7 P
, S" P& c: _# ?; b A
ActionGroupDemo(Zone aZone) {8 G# }8 F* \3 P
super(aZone);( c3 t6 \! I& d! f- }! j
list = new ListImpl(aZone);' Z, p3 f9 f$ @
swarmSetp();6 T3 O" A0 p3 [+ V4 n
actionGroup = new ActionGroupImpl(aZone);
# H1 x4 {, ^) J4 A& m/ w- h2 M schedule = new ScheduleImpl(aZone);7 T# b, \* v- f& ]6 K2 c
try {
% L- V) `+ l6 w6 Z# W7 B Selector agentSel = new Selector(Agent.class, "agentStep", false);& d) y; U, n) t5 O( B! L0 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
l& ]3 E6 }* q& w$ I) X * y' T+ W7 i$ W
actionGroup.createActionForEach$message(list, agentSel);
/ _: F# F6 j6 z, b# ]; S" X actionGroup.createActionTo$message(this, swarmSel);
5 L6 v, O C1 x) s: y0 L5 s( E schedule.at$createAction(0, actionGroup);7 e% Q8 \8 Y) I. {% w
schedule.at$createAction(1, actionGroup);
( n$ [$ S) h7 V, w schedule.at$createAction(2, actionGroup);
/ i4 J% ^8 r. |& R; }. d6 \
5 P& S& O0 Q1 G) A% I4 e! x7 C } catch (Exception e) {" V# K" b! h: k- W0 C
e.printStackTrace(System.err);
" u n( U0 P9 \2 X- [, k- Q //System.out.println(e); c n) n) A- h( J
System.exit(1);& ]6 {4 ^- P, Y
}
$ x8 D( M$ ?1 j; ]# [ y0 ]
, y: G6 N8 D# k: u
3 }, g" i) t: r8 |' R7 g$ p }
, a" O* n `" K) K; m4 H; u2 p0 w: w: B4 w/ I
private void swarmSetp() {
5 I2 @2 j6 H: L- H6 s3 G' z5 P list.addLast(new Agent(Id));
8 [2 o5 o8 D) I Id++;: z% {7 a2 z/ K. k$ a9 y2 _
}
! @9 ], [9 \# H. x8 g
: B5 Y i1 t3 q z6 f public Activity activateIn(Swarm context) {3 f& K! T: @; ~+ Z; T" v
super.activateIn(context);
, v( k: d; O; E schedule.activateIn(this);
1 S- i2 h. p& r( W& | return getActivity();. L! A0 k/ L8 k7 M( r
}
* }" L4 l& } x9 N" _* T- v- B+ r7 o' U" ] r: E; @( K: t
public static void main(String[] args) {3 ?6 w8 h2 ?" u; h1 Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ ~% F1 W* }/ ^, X. Y* S. \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& Z5 L1 b8 X$ M8 c* C$ Q: I. E. `
swarms.buildObjects();
5 d- {- z& V" Q7 A/ z swarms.buildActions();
* \( t, W8 C3 j, o4 t0 {8 m1 Z swarms.activateIn(null).run();) M3 K. ^' w" _/ W+ k: o$ r
}
5 `6 |2 I& H% c7 D, \: l9 S0 A- i; g; p
} |
|