|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ k/ V8 G) ?2 y# g. k( @
7 I' _1 A/ R9 w6 X# X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ s- ~% Z" ~, q- Y( n% b& M! e1 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., G" l4 O% X: ^) c3 z7 l5 f4 @
swarm.SignatureNotFoundException
5 g2 Z$ k2 g/ a! x$ t( I8 A! _ at swarm.Selector.<init>(Selector.java:76)' ^7 J3 ~. f. D0 \8 T4 v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& d* Q6 |9 ~2 B* C7 x! ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 O/ n7 s' I" K: ~5 |
$ _/ G: y! b W- L0 a2 p# K0 V4 Z {/ |- J3 g( g L- {+ s
import swarm.objectbase.SwarmImpl;4 `6 M# C: f/ o% }5 v
import swarm.objectbase.Swarm;
& b8 [4 w7 K2 X$ b. T# C' x* S) aimport swarm.activity.ScheduleImpl;: J& q% N) \4 y* s' w8 j; t
import swarm.activity.Activity;
( L' D* _7 ~; a; k; C, U/ [4 A2 Yimport swarm.activity.ActionGroupImpl;" V2 g0 M1 c1 [$ P
import swarm.collections.ListImpl;( G0 c5 d. P/ F; Y( L- f! m
import swarm.defobj.Zone; + t1 x; ^: w' l9 R
import swarm.Globals;) A( b% c3 x( f- u0 V1 ~
import swarm.Selector;9 z* L# r* V; x, w7 o
import swarm.activity.ActionGroup; `# S0 Y3 P; z* j
class Agent {
/ A2 T/ e0 ^/ Y+ [7 y2 V char id;
% v! [4 i" d! a; t3 V- c0 n' g# L( F" K) B( v1 z4 j1 r% B
Agent(char id) {
* i, s3 b, X2 I this.id = id; A6 Z' A2 k* R
}
9 C. y& V/ i1 k- i* p+ T |: o+ c& O
public void agentStep() {' l p1 t) d" M E( i3 S" f
System.out.println(id + ":" + Globals.env.getCurrentTime());
; N! t4 M* g& G6 H' C5 s, z9 Z6 M }
+ e7 s# A$ s* r N! Y4 r}
. Q: M: g3 w, F; x; {! \8 ?
' b& O) i/ }+ e: ]) |/ @) Opublic class ActionGroupDemo extends SwarmImpl {
$ @; }5 I6 \+ h4 l$ |9 ^6 \, Z7 c# z ScheduleImpl schedule;
( ]/ b5 ?; B9 F5 z( L8 @/ L$ D ActionGroupImpl actionGroup;4 }5 V3 C0 n! _ u
ListImpl list;" M7 Y# r2 f8 Q, }
char Id = 'a';
& u7 `2 z! S. e3 S- J
3 C0 q& \% |/ [9 C$ P4 K0 X ActionGroupDemo(Zone aZone) {$ A1 i' T8 {* T8 \: m
super(aZone);8 U# J8 {" X d2 N' S6 {: g! B
list = new ListImpl(aZone);
& e% a+ j/ M5 z+ O( r% u- ` swarmSetp();" E. z6 {) [) I$ ]% W
actionGroup = new ActionGroupImpl(aZone);, j) I7 j' N/ }) ^* G( N3 y$ L+ m
schedule = new ScheduleImpl(aZone);
( H. X3 k" k+ e# q8 w1 P: k6 g5 D try {
! B' g, U1 D; Q4 G M4 _, Z Selector agentSel = new Selector(Agent.class, "agentStep", false);" N- a0 I; m5 l0 G# o
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# a4 m4 v% n; I9 ]
1 @+ l5 q( _( H- c actionGroup.createActionForEach$message(list, agentSel);
! [2 B/ V/ n/ x) P: g. G( C3 d) ]# k/ _ actionGroup.createActionTo$message(this, swarmSel);
0 B- T0 n0 j2 o) |) s schedule.at$createAction(0, actionGroup);
0 a/ e7 t4 t( f9 O' O Q schedule.at$createAction(1, actionGroup);; B# Z9 K5 D: j' s
schedule.at$createAction(2, actionGroup);0 S$ Z! F& [5 O& ^1 j# C0 z: P9 r
7 o9 f; @# g. j {- l } catch (Exception e) {
- Y" y% m. p2 A. P. b9 @ e.printStackTrace(System.err);7 w/ K( ?9 t$ l, R" r( x. i" j
//System.out.println(e);+ Y( X( G4 Q6 V. K
System.exit(1);+ z+ L3 C* k' q) n! x1 c: s0 ~
}
# y0 |2 w/ g. z
' D. U' h3 \! {1 \; P
# p6 O1 w+ s, K6 ~+ l/ m6 _ }
% T+ F' E9 G4 K7 E& m( Z
# l' x2 l& F) Q' [+ I* e. n private void swarmSetp() {
% Z; f# G/ K8 C! u list.addLast(new Agent(Id));
* B! H! ^8 C! s2 u: C2 Y Id++;6 d3 o/ C; h* ]; l
}
" `' h/ n9 @6 {7 B
& `1 j3 H$ G- G- `: }. K X) y public Activity activateIn(Swarm context) {2 x( E- ]! C3 s% w
super.activateIn(context);5 s0 t- v8 ]6 F9 m! |
schedule.activateIn(this);
0 }; t3 m9 P* x return getActivity();; X1 r Q ?4 r7 j5 ?" v
}4 L3 K6 @( B& C2 B( t
% V* x- m9 D4 v. W4 `& C1 h public static void main(String[] args) {8 T, T" Z6 ^& d8 Q. @' x" C D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ m0 D7 A" a: y7 ~ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. H- a# h5 v! Z' f/ w; F& m6 X swarms.buildObjects();: |0 Y9 Q# } E" z
swarms.buildActions();
1 e! j, V, h) w7 a& d* c swarms.activateIn(null).run();
0 n+ B" y5 y! n, g }
: s- R% z/ I* g$ T) d% m$ a' a# \- c
3 |" b) l' i9 F7 m} |
|