|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 W* x' b Q+ R% i" G; a
: z2 E1 x( u2 h4 t' u8 V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ b9 f0 O9 `0 R: S I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ L7 H0 ^1 D$ W# w
swarm.SignatureNotFoundException& U: T% @( F, u4 l& } |- }
at swarm.Selector.<init>(Selector.java:76)
) f, `3 m1 K' n+ i4 A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 ~& ?7 T! |! |" O$ Q3 c- z) N& w at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 [' J; N! v' s/ [! @0 y. e( ]
( w8 e( z, z3 K9 _; Y
$ [9 ?4 `8 ^5 Y, Y5 e( Yimport swarm.objectbase.SwarmImpl;3 m& w; `# d- T; P4 I
import swarm.objectbase.Swarm;! J& B# c9 q' W; |+ K" A
import swarm.activity.ScheduleImpl;
8 X! V6 I; _3 z4 m9 }import swarm.activity.Activity;9 {- ?7 Z* u9 B& N
import swarm.activity.ActionGroupImpl;3 j$ I0 N/ S/ [' o7 r1 \: l( t# E3 w
import swarm.collections.ListImpl;
9 Z; c2 h( [! I% fimport swarm.defobj.Zone; " L8 n. D' h y4 [2 Y' \- \( [
import swarm.Globals;
, o' I4 q8 x3 eimport swarm.Selector;! _6 n, l+ H0 k
import swarm.activity.ActionGroup;
9 w0 D+ S: n# D$ f3 z, n9 R8 _class Agent {
) M8 t1 ~: A/ h char id;
+ y9 b5 A; g7 z) P. N
' m3 Y6 P5 F+ T" V6 @! q Agent(char id) {: ^( V- n* n9 @6 M' m7 g
this.id = id;' n6 D: O" |* X- y+ g
}4 T: f5 F0 U$ V M: ]3 e3 L, O
# u$ Q9 K' N' x. k+ b
public void agentStep() {
1 A2 t$ g) S. {. |( K+ K) x System.out.println(id + ":" + Globals.env.getCurrentTime());
; K8 C7 B% M9 [* N/ e9 e }
$ Z) @7 U. R' W( n; b0 Z6 X: x}- ~" s) i: p. ^) E* t
' P, s- }5 t$ z: x3 J! O) r
public class ActionGroupDemo extends SwarmImpl {
* g5 I% n0 Y! s0 a! i$ e+ e, ~ ScheduleImpl schedule;
- E9 m) v/ O; ]. f ActionGroupImpl actionGroup;
! B2 R6 B* Z7 ]/ n ListImpl list;
5 q2 c; p5 ^ d5 h char Id = 'a';
0 C1 \$ K3 d2 l
7 [4 ~( ]0 Q R f( Z8 h ActionGroupDemo(Zone aZone) {6 ?3 s" F, f. L) @! h/ l; N
super(aZone);
* P( Z2 P3 e# S$ y1 r5 x6 s list = new ListImpl(aZone);$ ]1 E5 Y1 R' E: @' T% m3 @
swarmSetp();5 x9 B! a' p( W& I! O) K$ ~0 n4 T6 T
actionGroup = new ActionGroupImpl(aZone);
& c2 G; C/ f! l6 U2 b. L# K$ V0 v schedule = new ScheduleImpl(aZone);* Z* Q; ^ ?5 k6 {& ]( H( v4 b# }
try {
5 ?! w0 h: ?$ X$ E7 c+ S Selector agentSel = new Selector(Agent.class, "agentStep", false);
" l+ t/ i! m6 H/ ]- a) i Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. y& V* F, X& l" T
0 T/ S: ], p& v7 V actionGroup.createActionForEach$message(list, agentSel);
- W7 j$ r- P0 K* @. v# B actionGroup.createActionTo$message(this, swarmSel);
9 h! @8 e$ Q) C schedule.at$createAction(0, actionGroup);
/ e. {. G+ C$ g% }9 v! ? schedule.at$createAction(1, actionGroup);
. v g& g3 r( Q/ n( s0 j4 B4 { schedule.at$createAction(2, actionGroup);/ U: Q0 A' b+ e
; V+ P7 U. `$ u4 a, P
} catch (Exception e) {! R5 k2 K8 P" `$ v% Z; O' A# z
e.printStackTrace(System.err);
$ ]1 G' d2 h6 |9 I //System.out.println(e);
$ V; h- p9 |9 d3 N+ z System.exit(1);# y6 T4 h1 w: X& |' L
}8 \! ?* n1 }5 W+ c9 `& k0 d
! H* i' p- F6 C- Q0 D2 s' d7 }) x, m/ X$ l0 ^) ]/ S
}3 G% {+ |' l# E4 O% V
0 H( F9 ^2 ?" { S# h private void swarmSetp() {
k5 c9 b, }" n% N list.addLast(new Agent(Id));
% O8 F- X) ^- A9 s% u4 i6 U Id++;
* |) T0 k2 ^7 x }3 K4 v+ P& d" N, y
! o1 ?6 p( t7 m
public Activity activateIn(Swarm context) {. b5 z0 ]) W6 p2 }3 c5 A
super.activateIn(context);, M3 I- t4 X S" D" Y
schedule.activateIn(this);+ x7 B4 q* V9 y, n6 X) f- o
return getActivity();5 J. J3 P4 U" o e& F( x+ {7 i$ C1 }
}
3 X) Q' f1 g1 Y, F4 K) P
+ O! Y) h& t0 t! @8 N public static void main(String[] args) {
2 d, V/ b* { L4 L- a. k5 ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# Q8 D$ `4 y; i" K! l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' U1 H: Q" T- ?4 a( g b `9 J swarms.buildObjects();- W% A8 Y+ Z/ L
swarms.buildActions();
4 Q4 ^( I q1 m! D y2 ? swarms.activateIn(null).run();- y! t9 t( V; W4 R$ g$ H% f
}, n8 d. V6 E Q4 g
" o' {' L- a" s: v3 S} |
|