|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 K. {, ]- W2 z' J$ \5 h3 X- u6 e) f b) [# R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 d- c! e2 i7 }' o. h5 | B+ p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. k8 u! s4 I( o% v2 n5 g
swarm.SignatureNotFoundException
: I* k1 W- V+ X( |9 ~3 o' s at swarm.Selector.<init>(Selector.java:76)
: y1 r3 H* ~/ W& `3 x. o7 f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 F. |% [3 L) @: {% |. b1 t at ActionGroupDemo.main(ActionGroupDemo.java:67)1 V$ B B" L' @6 w+ v( {1 U
2 v- X9 P7 ~$ Z& i" z6 T% ?4 J5 T! Y) @9 L2 E- i1 O
import swarm.objectbase.SwarmImpl;
/ I: s8 V3 z7 ~% Z6 Oimport swarm.objectbase.Swarm;
5 v: ^* i! ]% \ S, Eimport swarm.activity.ScheduleImpl;9 x7 K% g* s' v9 E" ?
import swarm.activity.Activity;+ c" o0 I4 n- H5 b9 x# R! W
import swarm.activity.ActionGroupImpl;, E1 i8 j& x" q; Z
import swarm.collections.ListImpl;
) }$ c" X, n7 Z5 M: X) rimport swarm.defobj.Zone;
8 j. R- B [7 @7 w6 q( F4 ]import swarm.Globals;. }. b) v6 t6 B) E
import swarm.Selector;, i9 G# J! w2 o, R
import swarm.activity.ActionGroup;
" C. `2 a i' I( O5 g* a% _class Agent {
/ o0 g+ y3 u0 [* v$ r7 h5 w char id;
! ]3 L/ z& M, H6 p) j+ ?; N0 _0 G! _5 V% A) f+ k3 G
Agent(char id) {. @8 k' p/ }- {7 } k
this.id = id;* \! \& z' I, p. t' ^3 N
}. |2 Q+ t. i7 v4 J
$ H. v7 ]' h# l2 s) a" w* o public void agentStep() {( r" K& b5 m% _' z
System.out.println(id + ":" + Globals.env.getCurrentTime());
) v; J/ l1 ?5 I4 X6 l8 p }0 f/ F2 R8 e1 k1 Y# ^0 T* W
}
) m: t0 f8 X' Z ^" F- _
& E7 q6 Z6 u Hpublic class ActionGroupDemo extends SwarmImpl {
6 r T7 }0 i9 b. Q7 k9 q7 z1 x ScheduleImpl schedule;0 M7 h/ l1 k; P
ActionGroupImpl actionGroup;0 k2 W4 t& e( |+ B$ U
ListImpl list;. ?9 K% E) u! k. G! B
char Id = 'a';& e5 K4 h; I+ n' n" ~/ \
; N6 a: [/ m7 B D& L
ActionGroupDemo(Zone aZone) {
% i$ D+ o( D) e super(aZone);
( n3 C) N9 z9 P! a+ Z. f& ]3 F, S list = new ListImpl(aZone);9 e1 W+ @/ u7 [3 s3 O/ p
swarmSetp();, Z$ B+ J# A& ]# H2 m( J
actionGroup = new ActionGroupImpl(aZone);- X1 \1 X6 h& _, L7 \/ X# P
schedule = new ScheduleImpl(aZone);- W2 ~7 ^" F4 {' q. ^' K' G
try {% {' b* C9 P1 R o
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 [" S1 h2 N9 h) S: x% D0 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. \4 ~! `/ a' A4 Y2 U' [
. u# D' \. H3 M. w9 x6 Q actionGroup.createActionForEach$message(list, agentSel);
Y( g) S2 |2 N* r actionGroup.createActionTo$message(this, swarmSel);5 s2 `. g$ H# k! M; `
schedule.at$createAction(0, actionGroup);' W$ y+ ^, A0 K
schedule.at$createAction(1, actionGroup);$ N7 G$ l3 X6 l; g8 U3 ^1 m
schedule.at$createAction(2, actionGroup);3 b% G+ U5 ` |
9 k9 l* P' x' g% K6 \
} catch (Exception e) {* `4 |! `' y& m
e.printStackTrace(System.err);
/ a, M7 ]! d; Y3 m //System.out.println(e);
E, [3 S& e- ^7 C" X5 w8 E) r2 N9 X System.exit(1);: ^# I0 R4 X5 W' I' ~( `' c
}2 P$ o" v( [+ N
9 @ I/ k+ r. g
* W( B" m/ O# p2 F, p }
8 T+ N& ^9 P5 [
% w- f/ F' r5 D8 R. B private void swarmSetp() {1 m- @0 h2 ?0 y3 p* R$ k ]
list.addLast(new Agent(Id));, \3 N" v G1 U1 m* J* a
Id++;
/ s* m8 I4 R3 t0 G# g v9 F }
5 X+ I$ s: Q5 s( ?+ J* X3 y
* _2 v' P# B( L# m1 N' S public Activity activateIn(Swarm context) {! j8 N7 |& W9 r. o! @
super.activateIn(context);
3 v# u1 X: Q3 s' [0 e schedule.activateIn(this);" k# v+ a) s, Z# v* {7 w* @
return getActivity();* W y8 g5 n( U' o) A8 r
}
1 g; X4 X$ U$ g; p
$ M4 G- [3 i. Q- X public static void main(String[] args) {
8 W# N9 a- z2 i/ p: G% X+ r0 k' A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 j9 f, A. u% v( @5 a% P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 C9 D0 C# h6 j( d3 x swarms.buildObjects();
& l9 p1 b# f, t$ E n3 U swarms.buildActions();
$ G; O# B% o' Z; K6 W' w! ~ swarms.activateIn(null).run();& N6 H- d9 Z- a+ h- c
}& R' R) l$ A- d" R. O9 I
8 Q) R4 H! j$ `
} |
|