|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; P' v! M* U! q6 {. o8 R9 h, K
0 i& z: Q1 q7 H6 _) @- D1 e; B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, m4 a4 E. S1 b& G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- |1 J4 T( ?4 {6 Jswarm.SignatureNotFoundException
3 g1 @8 x4 N. s: v/ D2 F at swarm.Selector.<init>(Selector.java:76)
- j, D$ x6 A" A$ v/ p at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" r5 h! D7 }8 Q at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 Z% r7 J! I8 P8 h; F0 {& S, ?
& t1 F8 S' E6 W
. w9 X5 b" Q- X9 T/ `' |import swarm.objectbase.SwarmImpl;9 G) H6 @! \* q- v! U$ ?
import swarm.objectbase.Swarm;6 u3 k; A1 b' V: G7 R
import swarm.activity.ScheduleImpl;
: q; Z0 z7 M0 ]. _3 n9 ~2 limport swarm.activity.Activity;
3 P$ w5 \3 ~! {8 T) Fimport swarm.activity.ActionGroupImpl;
7 K* Y, K; z6 G! J: Gimport swarm.collections.ListImpl;
! t+ K! j3 U* d3 o0 [import swarm.defobj.Zone;
" [* x% g( C, E5 f6 n8 dimport swarm.Globals;
/ h$ _, Z" m3 m: y/ ]/ [import swarm.Selector;# ]0 G% S; w: ?8 l
import swarm.activity.ActionGroup; * v1 c0 O) u6 N# X) \# b
class Agent {/ K6 e- f& }. \# p M- U
char id;
! e' ? i; J# A! T* K
/ ?8 p" c9 n2 Z& D Agent(char id) {/ l8 X x. `6 f
this.id = id;2 ~( t" \$ s4 U
}; W7 R. f- A! G& B- ?' m
6 q$ Q7 B* ~7 A9 P+ z T/ q
public void agentStep() {6 k `4 K* P$ Q. q& w
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 {3 p6 V, p9 ]0 A2 b9 k }6 q y T) J0 w6 [& o
}
& Y' \' |$ ^1 _$ M! ^6 f% ~; q2 o, [5 _4 X$ z/ A& x4 X0 K# a
public class ActionGroupDemo extends SwarmImpl {
7 ]5 ^, R R, I+ M! _; h0 t/ T ScheduleImpl schedule;
/ t) u* J7 t- E6 U% B/ u# h9 r ActionGroupImpl actionGroup;' E3 E9 d- O: \" ^8 X' q
ListImpl list;
& d) L: f- [) z+ E- S0 e r char Id = 'a';
2 e$ ^! g5 a2 K7 ^' \' I0 } b
4 z# Z J* Z+ @& m ActionGroupDemo(Zone aZone) {
7 c8 N; M9 @- b- a8 |* G% x super(aZone);) z2 z$ ?. n3 W% z# V% e( M) ]
list = new ListImpl(aZone);7 T# B: N$ R3 O. s% j% W6 T8 a* x
swarmSetp();
- L" i9 Z+ p, m; a- a, R( o actionGroup = new ActionGroupImpl(aZone);, y3 c2 m! X$ F
schedule = new ScheduleImpl(aZone);% i; b4 T" g+ T
try {
2 [' p# X' H, F, T% h, m Selector agentSel = new Selector(Agent.class, "agentStep", false);+ s% p5 t% S1 b- z' |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' _7 L. X+ d2 b ' u3 l, f5 Y% i9 q+ D" g+ j, X
actionGroup.createActionForEach$message(list, agentSel);# E+ e, f4 `8 h! `
actionGroup.createActionTo$message(this, swarmSel);8 n7 }1 U5 G: S( K
schedule.at$createAction(0, actionGroup);2 V2 g, y+ p4 f- h, d2 z9 H* ?
schedule.at$createAction(1, actionGroup);, b0 G9 K; g# W+ G0 ?4 E
schedule.at$createAction(2, actionGroup);
' M1 a- H0 P$ f; s& r# ~8 j2 V8 P4 G; M. l
} catch (Exception e) {
' p( m$ e1 T! M0 k4 ?6 n e.printStackTrace(System.err);
1 W. b t! ~& W9 Y( _ //System.out.println(e);
; |: }; E, {7 A& O9 f, m9 a System.exit(1);
' `* k5 o' y6 Y6 ]3 w* E; l+ F ~5 N+ N }7 A2 s5 o; v( v6 P3 H' k( O' N
* m+ i% A2 I. y
9 F- J, O ]' W2 v- I% w }+ R$ H( p7 s1 }
- N; }$ s# @! _9 J7 _* |1 ~; \
private void swarmSetp() {
4 \' P- N( ~0 K1 X' C, @" f- L list.addLast(new Agent(Id));2 ]& B; X- G9 O# z
Id++;" \% F* E. E' `( J# g4 n" \
}) P0 S2 o2 B. ]; d/ S& M, G
: ?) _$ R' K0 x7 X
public Activity activateIn(Swarm context) {
; _9 u) g1 w" X* @. n. t7 V) n( N9 n super.activateIn(context);/ P, w) r: ^' S; `) m
schedule.activateIn(this);, }9 f8 I8 U7 G% ~
return getActivity();
0 S" E0 S% Q, A+ L) f* I }
' X) K+ g6 W3 `1 a" K% l
% ^% s% Q$ x1 O" W" f public static void main(String[] args) {
^1 p, ~/ P6 \* r$ i1 F Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ c* W1 _& C; c" e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 L/ u6 |! L, b/ o swarms.buildObjects();/ p0 h2 W# s, m {
swarms.buildActions();. S, O {" b A( y6 v9 V& y
swarms.activateIn(null).run();/ G$ W; D! O U7 O/ w4 v* q
}2 F; j0 P, R: o: a
! \2 O+ O5 j }" g$ _- f} |
|