|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 A3 C% L$ ^+ |8 a% q; B+ A+ ]& I/ S! K" Y9 Q8 Q/ P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( C. H" @; v+ v$ `! x# {. T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: g" H/ s/ O9 Hswarm.SignatureNotFoundException
( z' M# Y7 o O at swarm.Selector.<init>(Selector.java:76)' Z: z/ ]& x# |4 l+ p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) q% I ` Q9 s$ Q/ p* ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 \2 u1 m* A: ^+ s) g* u" c, X
5 }( H2 K& T' J" y4 V4 b7 e/ o! K! ]- U. R8 x; D
import swarm.objectbase.SwarmImpl;
4 n0 N2 V- L8 ^9 `( Fimport swarm.objectbase.Swarm;
- @9 d9 _. y$ V$ h/ dimport swarm.activity.ScheduleImpl;" Q; M1 o4 O5 h9 O- r! h- A: e+ ]
import swarm.activity.Activity; |6 s9 S; a# Y3 q( @8 k
import swarm.activity.ActionGroupImpl;: C) n5 l/ |0 ^6 B
import swarm.collections.ListImpl;& G' k: j+ \, H7 W
import swarm.defobj.Zone; 5 g# ~ W7 z4 q$ g7 q
import swarm.Globals;
8 B8 U/ y. i( o: y! U6 @$ Cimport swarm.Selector;
- U) k3 T5 p) y q5 `( O5 C/ M" Jimport swarm.activity.ActionGroup;
: g j9 v4 C8 R" O- |% Vclass Agent {
2 p' i) ?$ ~4 y5 U' i char id;
( F. o' y( R% [) f2 m: @3 a& x0 m# Y. }) |$ M$ J) U4 R
Agent(char id) {
. ?+ j, Q; D- i this.id = id;
) k# W6 S1 Z$ }; Z }) Q0 T, @4 y9 g8 H$ Z
, {% ]# R K0 o" y6 R0 U
public void agentStep() {$ ]4 `4 Y. y7 l* d$ ]; ^" h
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 f2 Q) F" f' \2 I% W* S, Z }+ X$ W& N) h8 `) V. p' j
}
# b) N8 p. `/ v: U' m% w) A: A; ~+ Z
public class ActionGroupDemo extends SwarmImpl {
4 s8 z- I, w: U6 @8 k ScheduleImpl schedule;5 J6 N9 n( h* J S1 J
ActionGroupImpl actionGroup;
+ X; Q: R. \9 i( I" I7 B4 o ListImpl list;' q4 p6 ^3 u5 a
char Id = 'a';
9 H; ]0 o4 r- ?+ l. w5 C% b) O w' H6 y3 I( W- R! y8 f7 L
ActionGroupDemo(Zone aZone) {
( r t3 F1 P/ t super(aZone);5 N: L, }8 b1 ]! B; }- ^- s
list = new ListImpl(aZone);
, r2 g* l2 [' k% H swarmSetp(); g& @& b1 N8 _4 s* s8 q0 E" x: `0 H
actionGroup = new ActionGroupImpl(aZone);+ |& j" n$ ?1 M/ ]
schedule = new ScheduleImpl(aZone); n* c/ d/ h) ]# A' T- Z
try {
! Q# h# t$ @/ o% x* ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);
# ]7 k* ?4 Y3 @" h3 L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 |$ B, ^3 a1 t0 t) r" |! T" C0 M
/ N& }# C I; c0 F actionGroup.createActionForEach$message(list, agentSel);
7 s6 k0 a( n6 y actionGroup.createActionTo$message(this, swarmSel);
8 ]$ [7 ]0 ?1 l. `& p6 [! p5 C/ G schedule.at$createAction(0, actionGroup);9 `/ Z4 R9 w, _( o/ K: Y3 Y8 c+ s
schedule.at$createAction(1, actionGroup);- m! [$ F- a) s3 C
schedule.at$createAction(2, actionGroup);) J; H" r* R, H
, ^% g9 |# ]0 `. {0 u } catch (Exception e) {
8 |8 Y3 Q) l: H5 N7 V( h( n5 x e.printStackTrace(System.err);
6 T) B' o( s+ `, A6 c+ q, N% a //System.out.println(e);; _$ W- A$ r( U* |* L- l) `( |3 ?
System.exit(1);
1 C3 q# L1 Y' J& k }* i9 j4 }9 _; [5 R3 M' f4 m; C3 @
/ F9 U4 F: c" `0 C
( z( A: D8 r" Q$ ]/ `3 _! F
}
, X* N, A/ } s9 `
5 X: M: B9 k; ] private void swarmSetp() {+ G( B ^# ]. {2 x: I
list.addLast(new Agent(Id));
" b/ ^! n% p, z p Id++;4 P& w- a) i, ]6 R6 T% ?+ o* C
}! u! z8 X. w' Q! a" {, f6 F) k" B
; W/ ^2 o" y8 f( C) X4 O public Activity activateIn(Swarm context) {
0 R$ {9 f# h" L7 L2 c7 K0 X4 ] super.activateIn(context);$ } [; }* L$ e; }9 U+ w$ y
schedule.activateIn(this);
1 T; u) E! M' Y6 f% {5 C return getActivity();7 B6 G1 O5 O- s3 f0 R
}3 T V4 @* i# O; G, x$ b: S- X; |
o7 D5 P; T/ z. `: ~0 J& T public static void main(String[] args) {
1 ]& u" e4 q8 G1 @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' h, s' Z0 U: Q+ i5 W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 V! A0 |1 U2 a' h, V8 l
swarms.buildObjects();
: A! s8 e8 U7 o6 f3 @5 o swarms.buildActions();
, I6 N" L* ~4 F$ |3 x swarms.activateIn(null).run();
7 q$ H3 P7 j; G* ]/ ? }
% X! `) _5 U5 O2 \/ [9 Z4 u* P
& k/ k4 \2 @; g" U8 m$ R9 ` M} |
|