|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! v6 y( \" D" }+ o2 X% M
5 S+ E H" @: O/ o) B8 v$ c0 p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) |9 Q9 Y L/ U. f. f6 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- n0 x( \' M: A1 Zswarm.SignatureNotFoundException
5 X w+ {, `0 j b# F# ?5 U2 y; l, V at swarm.Selector.<init>(Selector.java:76)2 L# x4 ~7 w: o/ S, I Q/ |$ U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 g' l4 q1 Y3 D% ^3 F8 B
at ActionGroupDemo.main(ActionGroupDemo.java:67)( G) A+ W8 e) e7 k
9 ]- K" I G- v7 M0 Y+ ^' M9 k4 H" U1 L3 U B! D( V9 e; [
import swarm.objectbase.SwarmImpl;
5 w' s/ N& Z! y& w2 simport swarm.objectbase.Swarm;+ ~/ `; \$ @; R* {# u
import swarm.activity.ScheduleImpl;$ i \$ u1 o& O4 n
import swarm.activity.Activity;* ] U7 v0 P# s# j
import swarm.activity.ActionGroupImpl;
0 F& K4 D( n/ K4 m( f% Gimport swarm.collections.ListImpl;* v d. H5 [* |
import swarm.defobj.Zone; 7 P1 s( g" ]" Q( B3 l
import swarm.Globals; T$ M+ ~7 _- c# x- e0 O6 L, d
import swarm.Selector;
1 C( c9 z% R, z' s3 iimport swarm.activity.ActionGroup; " E& d! w f. {' H [: Z& k. x0 _
class Agent {
7 P$ k5 T7 y N" W, B char id;2 c' n9 O1 G2 F/ ^4 s( N4 _
7 B$ D- u! y8 [! c }( J Agent(char id) {
6 b; C# V" m6 V! e this.id = id;4 g6 `$ D7 T, O8 } c& t
}
3 |, a# v+ J' l/ h/ [7 j" Q
( t: o: A7 q9 R1 j public void agentStep() {
: n# h) ]2 K! ~# S) G0 k! m. ?/ m System.out.println(id + ":" + Globals.env.getCurrentTime());3 L* |+ x- \# O7 B+ q* m
}
9 i2 t4 ] |3 y) S2 x}3 M8 P8 |4 e8 z
% c4 X$ `) R6 i: Q$ e1 C8 @public class ActionGroupDemo extends SwarmImpl {( E5 h J6 x- B5 w; N1 R
ScheduleImpl schedule;
! J& Z! M: x+ M# L ActionGroupImpl actionGroup;
8 i3 M- N9 T) q7 b6 {" g# d9 V ListImpl list;4 g4 s+ T1 n* [8 Y) A
char Id = 'a';" D" p7 x: G7 N# n1 H5 V/ L+ Q2 `
- [- g) M5 K* v3 W' p3 I' ]+ n6 e ActionGroupDemo(Zone aZone) {
" G# L' ?# ~9 p T3 C super(aZone);
2 W- U1 a, J$ o' K" F list = new ListImpl(aZone);
" P' n$ r0 e7 Y* \( Q swarmSetp();7 t$ D; {! A) N+ @6 ]7 s. t
actionGroup = new ActionGroupImpl(aZone);3 @& u4 R" ~) Q* r: A
schedule = new ScheduleImpl(aZone);# n# ~: g9 L* D0 I$ I% S
try {7 `2 G, o# x+ p4 s5 h. {) r; N5 i
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 }& f% e) z4 ]: X8 E; r" t, H2 ]- H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. m, I) k7 z7 {
. U: @* `* m% U1 ^9 R4 A
actionGroup.createActionForEach$message(list, agentSel);
$ b8 c) N( }% M actionGroup.createActionTo$message(this, swarmSel);2 ^2 n9 n5 S7 W. [
schedule.at$createAction(0, actionGroup); O4 p: e' S* v% O* N7 r
schedule.at$createAction(1, actionGroup);8 L3 I# z h( U6 p
schedule.at$createAction(2, actionGroup);: t/ K, b# m- T* {
0 }# r, P) d* ?; f
} catch (Exception e) {: q+ ~/ f: D4 ], S. N( M" g7 X1 C
e.printStackTrace(System.err);
, B* E9 e7 O2 Z //System.out.println(e);: `& ?* Y5 d! Q& E7 j
System.exit(1);- n2 _% z6 ?% Q- ~+ G' n, A S
}
1 [7 {: A' f4 q' H t- U% }; C1 T5 S. K- F9 c: u( r/ S7 w* D
9 k* p6 |7 g3 ]+ c
}
1 A- x" o1 z$ k" k0 i; h3 j7 O) i! u
private void swarmSetp() {
5 O) ^+ q& A, K( S, g( q, h list.addLast(new Agent(Id));
/ {; F8 P$ v0 q( s9 B Id++;0 ]$ |8 c1 n+ `
}' R8 b" k2 i- v% U ?! ], S* V% u" `
* H! C0 T2 E' {# `0 v9 X
public Activity activateIn(Swarm context) {1 r# ^- R- M0 {8 P. o. t
super.activateIn(context);
: f6 [0 ^4 C V' x schedule.activateIn(this);
5 a& N, a! y& e6 l& l return getActivity();
; N! j8 j' K- d, z$ V4 b) Q }+ J) Q) a3 V) g5 o5 z' M
# ^2 ^/ T# P: N0 Y0 q2 F6 W" v
public static void main(String[] args) {
) _+ Y1 E$ u. G# \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" R2 v' ~' w5 f# R2 `0 C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' `9 T- a( O' u1 j. X5 x# f* Z
swarms.buildObjects();/ \3 ]6 i9 l9 A& N/ v
swarms.buildActions();
2 `5 b( F# t q7 S. W* t- e, k swarms.activateIn(null).run();
- ]7 ?5 S8 x# j }) k$ V8 C% h, u0 t0 U+ z" l
8 c7 B" f4 v% Y8 Q: L} |
|