|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: m" a9 s- F% p% z" I: U. V3 d; |9 ~; G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' y1 Z0 ]0 @. D0 a! J6 w9 e1 }. e$ H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 j; k) O$ E Z# U8 T% ~- t& d
swarm.SignatureNotFoundException! y0 X0 l/ E4 a. i; l
at swarm.Selector.<init>(Selector.java:76)# N, A- A5 l% x! p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) j$ J( u/ T$ M) N# u at ActionGroupDemo.main(ActionGroupDemo.java:67)# @) @& U9 g' y7 b3 U
$ u) p+ Y, k. u! U1 D; u$ y O# x0 M P) L
import swarm.objectbase.SwarmImpl;
6 I( m* N" H' i4 q2 A: j) M$ Kimport swarm.objectbase.Swarm;8 }. q) V, S, y1 r2 r
import swarm.activity.ScheduleImpl;: u$ v# V5 C) ~1 r& }
import swarm.activity.Activity;9 t( R: } e3 d
import swarm.activity.ActionGroupImpl;
+ K; a) p# `: F5 w: u9 E* Mimport swarm.collections.ListImpl;; \3 ~ D4 }4 X* C! ?4 x! |" w3 r
import swarm.defobj.Zone;
0 R# k1 z' p9 z* H4 Jimport swarm.Globals;
1 y% i+ T5 t, bimport swarm.Selector;
* B" v9 P8 Z( I8 K: {" yimport swarm.activity.ActionGroup; ( s( a$ k9 y$ G7 F0 ]
class Agent {9 ?$ l# `# n1 L9 K
char id;
5 Q. |4 {) I0 P
& S( [4 ?" ^ L0 K0 ?0 Q Agent(char id) {8 d3 C' m/ s7 w& {
this.id = id;1 E$ n7 ]2 S' c. \
}
* S/ [% w, ~) Z+ `, B, x M) W3 {) ` D9 z* Q3 }
public void agentStep() {
6 L" B0 f) {6 t5 f* v# s+ o& b System.out.println(id + ":" + Globals.env.getCurrentTime());" W5 [4 |0 Z2 o+ x4 n6 j
}% `% J' H2 `, n3 T2 c
}; e7 h+ ]1 G( }$ J3 g8 f# l
; c1 a4 _) u; M h: [
public class ActionGroupDemo extends SwarmImpl {
# ]" D1 v9 z4 `9 Q/ q ScheduleImpl schedule;; h4 O9 b5 Q1 |) ^# L9 {
ActionGroupImpl actionGroup;
" e! @6 V0 H8 W4 h& w% d* m ListImpl list;
$ z2 O% k( b$ m: P char Id = 'a';! U. m( ~1 ~1 n% G- \6 I: n
4 _. n2 p7 K3 n- G
ActionGroupDemo(Zone aZone) {
; V3 Y* l) v% K super(aZone);; u) c5 e+ n7 S2 J! @
list = new ListImpl(aZone);
/ Z/ p2 a% ?# p1 P6 {: ?; v' i( |3 P swarmSetp();- z+ b4 s0 L6 Y2 M
actionGroup = new ActionGroupImpl(aZone);, j8 F; k" m4 |9 q9 }
schedule = new ScheduleImpl(aZone);
: J, t& _4 R7 Z8 x try {# q4 G+ d2 e8 ^. m# Z. h. _+ d
Selector agentSel = new Selector(Agent.class, "agentStep", false);
- ?6 F$ T) ~2 I4 o) w( n4 N* y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* V) |' |7 Z* H' c: g
- W3 i9 w8 E7 H/ }
actionGroup.createActionForEach$message(list, agentSel);1 d$ M1 M3 J& C' U4 T: a* i
actionGroup.createActionTo$message(this, swarmSel);! C) p. c" z/ W5 {; m: }
schedule.at$createAction(0, actionGroup);
3 c# u& Z* ?% }3 r& R. X t schedule.at$createAction(1, actionGroup);
( N L5 s1 Y. g* E schedule.at$createAction(2, actionGroup);
' U; U7 X, x/ g d0 V' a( U3 J* ?4 O: b
} catch (Exception e) {
$ ` K& A! l- `- k, R& ^; { e.printStackTrace(System.err);
% Z1 m# j% ~4 O a5 t3 u //System.out.println(e);
+ M, Q `9 T/ q: e+ v# a System.exit(1); _' L1 d, ?5 L
}$ T9 b) r( U! x
! ^0 V L. C, Z! N2 q& s, d; [ f
; \# ]4 h' N+ K8 ?: ^
}
; |7 ?: M" }) _! Q. r' A1 i) p9 D b2 n1 e3 T; N0 ], f
private void swarmSetp() {
/ B9 ?6 a, a4 \1 I list.addLast(new Agent(Id));
* L2 P0 | h- w. K0 f+ n Id++;: i3 P7 }6 R3 w' d
}
; l; y% Z% l% [9 b% C1 z* Z# h
. M9 g; Q m/ T public Activity activateIn(Swarm context) {
* r6 \! [- v( k6 |0 _4 a super.activateIn(context);
! F4 _8 \* b- p schedule.activateIn(this);6 m) S, m6 {' c2 m0 n- Y$ s
return getActivity();. U* V# a, Y; K% a
}* i9 [6 R2 b1 ]0 g X
8 U0 Q* U3 H! J( `$ B6 N) c( w+ @9 p
public static void main(String[] args) {# E& T' c. ^; ^! \2 }7 j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ^/ P9 A* e! h& O+ d d8 k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 W# k7 d9 ~* X7 @8 Q
swarms.buildObjects(); t( Q2 M9 O( i
swarms.buildActions();
# X# c; l# {2 \4 T [) @0 z) E swarms.activateIn(null).run();
7 V) x M) ^3 P5 Y% T: a5 n }% O$ Q9 V1 O; x5 b- N2 k# L
! U: t2 k! K$ r" Q* _- c# E} |
|