|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ `2 L' x1 O K1 K: n9 h
6 R& Y7 K9 w# r8 p6 {" r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( a: S0 M. Y0 L+ p" m4 Q1 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." e+ e$ N2 D( e, j
swarm.SignatureNotFoundException
( r8 s6 S) @# Q* O at swarm.Selector.<init>(Selector.java:76)
" x- c5 d+ o5 V at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& J. `& G; S$ T& Y: n
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! M c3 E, @/ b" N
+ a/ r3 X. E; ^1 b8 `. E
x4 o1 c" S! y! |6 Simport swarm.objectbase.SwarmImpl;
! u6 h! v5 U3 Q) t$ yimport swarm.objectbase.Swarm;7 u1 I2 ~" O n" u/ E0 u
import swarm.activity.ScheduleImpl;
0 L5 ^3 G) M% O5 pimport swarm.activity.Activity;
7 H2 I$ A" d( N( |6 ?import swarm.activity.ActionGroupImpl;: k/ g5 n/ h {# l3 R/ T
import swarm.collections.ListImpl;
, {9 H- j. ~$ z1 I* i, D4 Q0 A* Vimport swarm.defobj.Zone; & i6 t! E0 `; w/ Y8 F7 g
import swarm.Globals;( x" K2 a1 w: v( \1 c: b) Y
import swarm.Selector;, V5 h" t4 t. e) L# `
import swarm.activity.ActionGroup;
7 q ^6 o6 [- x+ }- k$ eclass Agent {
8 R; |/ m$ y L% [8 H- e( k char id;
, R' V% Y- h- Y6 P2 Z# `3 b3 Y2 H" r( [6 D1 a. B
Agent(char id) {
4 `% j% D+ q$ D! g4 y this.id = id;0 [8 S6 \# J j) Y
}
* h, |+ x9 I* v) ~# ]% ~
2 M o6 @6 D7 R$ Z5 E$ X public void agentStep() {
, m) m( |9 h6 z: }* ^- ^ System.out.println(id + ":" + Globals.env.getCurrentTime());
G, m/ | W3 K# B( v }* ^6 e. y% B, P' V6 x) D1 u5 A
}( s: u, Q+ ]/ a) P
* o$ ]) E* j. e$ V
public class ActionGroupDemo extends SwarmImpl {- D. g1 q* ^9 F- ?% n4 z
ScheduleImpl schedule;' @7 _6 a) o; @( a4 d
ActionGroupImpl actionGroup;" X# G. J* Q7 f/ B$ E
ListImpl list;
0 z+ @6 L3 O) w: w char Id = 'a';; B% P. c& y6 G
" v2 g. q" A9 O* y: E. s
ActionGroupDemo(Zone aZone) {
+ a& y/ J- ^ s2 R super(aZone);% l) q1 l+ S& M* W2 ^1 r% B1 x. U
list = new ListImpl(aZone);
5 w4 j1 W; l( C, @ swarmSetp();9 p2 |3 s5 c) q
actionGroup = new ActionGroupImpl(aZone);
8 S4 o& G9 c' l% M# B4 }$ Z schedule = new ScheduleImpl(aZone);0 @) D8 C7 \7 N+ B6 |) \4 ?7 O
try {, J( q) i: B! p! [+ Q2 I
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* x+ a6 A/ K8 q3 A/ V7 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: m* @7 c+ \& E+ i, e- y- l7 Q, l
+ }( e- |0 x- S) q- y
actionGroup.createActionForEach$message(list, agentSel);9 \: i1 A: e/ w* h0 X4 b) v7 R4 b, A
actionGroup.createActionTo$message(this, swarmSel);& f+ o+ S6 Z4 l( f
schedule.at$createAction(0, actionGroup);
$ G2 G; ^$ t! A; R6 H schedule.at$createAction(1, actionGroup);! F2 }! C Z( `+ b/ [7 s9 l1 Y. a1 C
schedule.at$createAction(2, actionGroup);, A# N4 o, `& B$ R
U k O5 ^1 }/ ^5 H% m } catch (Exception e) {
6 c! p3 y! Q% A5 n- D' c e.printStackTrace(System.err);1 P* c* o: n) f4 f
//System.out.println(e);4 ]! ]" j+ @: ]! r5 k
System.exit(1);& Y& ]( Z) m9 z0 j4 o
}
9 m+ a! i, R3 }
' x0 H- U5 \+ f! k4 R0 Y
/ r- w+ F# A$ q+ c# J" V1 E5 o' n }
& S4 w* u8 R! e0 ~( f% R! k
" W5 o8 E9 P8 _, q9 \& S2 | private void swarmSetp() {$ T8 t; v0 c, n/ m! c/ w$ U
list.addLast(new Agent(Id));
H8 @0 D0 Y* c( a Id++;2 S2 E7 R& k% h' \
}' a0 |0 W1 C: T3 N# @# `9 L5 U5 }
: E5 N# v1 ~& M public Activity activateIn(Swarm context) {
, ^9 r% A5 G) K9 d; P) f; h super.activateIn(context);6 ~ ~' m; Y8 L; B
schedule.activateIn(this);. t/ y" E. ~4 g% b3 b
return getActivity();4 S, P0 T2 v" k1 Z* |3 [1 s: j
}
7 C' L5 E8 k: E5 ~! \* d: u7 t+ {1 J& {! ^9 R1 T
public static void main(String[] args) {
2 V6 q( {% R! r7 J. W; V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 [3 g5 Z) D& T8 E* o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 I% q7 w! n0 h/ i4 ~. n
swarms.buildObjects();
4 o$ v' m0 s2 M# z9 |1 ^# j swarms.buildActions();# q. k+ {2 E( y1 X
swarms.activateIn(null).run();6 D1 P7 J, h9 f6 H7 D0 o& K
}
3 N+ X: t" r. l
0 G3 G" K$ w% `} |
|