|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; n; c- \. O- I8 E% h0 ]# T% x! V# S: R& O4 S' D# S. |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( L0 ]0 P+ i5 M( @. ^4 V# l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* J7 n7 I8 h. u i3 w& \# k
swarm.SignatureNotFoundException( S2 `4 \/ U9 l* w
at swarm.Selector.<init>(Selector.java:76)
+ U# `; G. S7 `. v4 j, m at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ @0 X+ Y) V0 z* z" h3 z) x$ z- f2 i at ActionGroupDemo.main(ActionGroupDemo.java:67)% H$ T7 z3 Y% c5 s, s1 L
0 T4 M- G" L" N P
7 d7 Y9 G5 W3 l0 Z
import swarm.objectbase.SwarmImpl;4 T. L& z8 f o/ p( W8 `; M2 ?
import swarm.objectbase.Swarm;
1 _% ?/ l' f, L3 A b( H' Simport swarm.activity.ScheduleImpl;
1 v3 Z, v5 l6 n7 l6 Zimport swarm.activity.Activity;* U" U# D. e! q0 B$ s: a
import swarm.activity.ActionGroupImpl;! S% A. G. O/ C- N' o
import swarm.collections.ListImpl;
' p r9 ^/ T _. @$ \. S9 r2 i( ^$ Dimport swarm.defobj.Zone; 7 }, ?. Q$ D, G8 y( ?& G
import swarm.Globals;; ~0 n4 }% W8 |. n8 G) I
import swarm.Selector;
$ Z- q2 @; _8 S& C. Fimport swarm.activity.ActionGroup; % _8 m8 ]( O: d3 @
class Agent {
, Q2 t" `" v8 A0 j, o& M char id;* l6 _+ n, f9 r6 U' S6 F$ I
* ], p5 h+ }" l- X# n' L9 F" ^ Agent(char id) {) f5 D7 W$ ?" z U
this.id = id;+ Z2 Y! J' L) x" _% E, j. o
}+ H* X+ U, T$ b! T
# q6 |5 [0 ?% { public void agentStep() {
& h$ K5 n8 x$ ~0 c; i System.out.println(id + ":" + Globals.env.getCurrentTime()); V0 U' ], g( @) m/ w. S& Y
}
! N" W* D5 Y3 M/ M/ D' F}# t. X/ j B; Z* [- g
5 C- s5 D) b7 z( }- A# h- W
public class ActionGroupDemo extends SwarmImpl {& `- o* ~, F& {* ~
ScheduleImpl schedule;5 w" p( p% g8 r. r' K7 x4 F
ActionGroupImpl actionGroup;
6 t- w; c) | j2 v K: E% v5 x ListImpl list;& Z% D1 s9 Z. X" ?, U7 |0 g
char Id = 'a';
9 U# Q9 A2 ^: i" a: V3 E( q, ~
& r! z9 H+ G# c+ d ActionGroupDemo(Zone aZone) {( r) H$ m W7 i( {/ [* h
super(aZone);
M! I0 Z) U4 q, `7 C$ F1 j5 A. H2 H list = new ListImpl(aZone);
3 e" K `, o, V* Z9 ?) [$ d swarmSetp();
: V: @) o6 F$ p% M3 c, R9 D% O$ C actionGroup = new ActionGroupImpl(aZone);
+ d+ b7 O3 }- ^+ p5 L* K schedule = new ScheduleImpl(aZone);
3 a1 C6 s6 F5 _9 P. n% `8 V, Q% V try {; o; x3 r5 m/ _% T0 ^/ D
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 b" I7 L0 v# r' r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# M# e: V, @" W: x 6 s) s/ n& m, B, ~2 S, [
actionGroup.createActionForEach$message(list, agentSel);- F( g1 ~& o ?- K; O/ Z- a$ f
actionGroup.createActionTo$message(this, swarmSel);
0 S; q) L2 ^. n3 w0 L; G! n0 W schedule.at$createAction(0, actionGroup);- J, k: i. J: l- i
schedule.at$createAction(1, actionGroup);
/ j- l1 W3 V4 T# O4 s7 O% K! D3 Y schedule.at$createAction(2, actionGroup);
0 y0 d ^, O6 a) s5 a$ E. l& C, s0 n5 @. q' N0 `/ k
} catch (Exception e) {
" t* b( l9 y% o" e# e0 q2 ?. i* d e.printStackTrace(System.err);
0 P% I. n7 v7 C; c5 o //System.out.println(e);% h; U: d3 X2 z3 }5 |0 _
System.exit(1);
. o; I, e9 _ P0 K6 k, A }
0 B4 U, T ^" p9 s2 K8 ?, P9 ~1 j% x" R# x2 \! n5 q f1 y
2 [8 H4 F, B/ b
}
: L1 N j) r* e$ e3 S
; i0 R. p5 {: m5 h private void swarmSetp() {1 P& G2 @0 r3 U, U, L5 |
list.addLast(new Agent(Id));: h% C# k3 f, K k1 r
Id++;. V( T3 j4 q3 X8 J
}0 ^6 W9 V9 b; F
: T$ n6 g+ ]9 G0 H" ~7 T
public Activity activateIn(Swarm context) {/ @" V/ `4 r: x& u, }
super.activateIn(context);
: B; E. l i( G& g; F schedule.activateIn(this);6 A! g6 N3 `# r0 Q8 @5 Q9 X8 v+ e
return getActivity();
% s) l) Q5 [. L4 X; ] }
r" X7 X! c8 C8 t
4 M9 p6 D3 Z) d$ a public static void main(String[] args) {
, f- @+ a* F0 ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 }4 U2 @* B, c6 U* W* }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% V: L5 \* J% h1 C( N swarms.buildObjects();: m1 l' p" W$ N+ u, [3 ]( f/ t7 }
swarms.buildActions();
. @- o2 ^( x) ~9 a: B- E g swarms.activateIn(null).run();& z3 p% c* m, y# W9 f) b& L
}
7 b, k6 B- k7 G/ _ R& E- Y4 C! Q5 \, ], f
} |
|