|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& U( I/ B' a) U9 q; k, j& i2 H# P7 \+ @: P" M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& Q g3 V1 O6 t, N, u$ d7 g4 v8 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 T# S1 m5 t# I& Q' |* h
swarm.SignatureNotFoundException
, x0 P. `) `4 d1 s3 B at swarm.Selector.<init>(Selector.java:76)9 C* ]7 P9 l' m- Q S. d0 I; Z) ~: Y% y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 P: L# [# q4 D: ]2 y0 L _0 s9 I
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% m3 k r( A0 R
5 [ t: o5 |% s) N' W' @, S. Y9 b/ d* F6 a1 p) u. _
import swarm.objectbase.SwarmImpl;( k% z; [5 D* c1 o. ~7 Z
import swarm.objectbase.Swarm;0 r" e, e5 n* u( f1 {) a, `
import swarm.activity.ScheduleImpl;4 K. [2 e4 J* u; N! X+ t
import swarm.activity.Activity;
" e+ F- f6 v$ \- e7 [! O3 w; Q8 s3 Zimport swarm.activity.ActionGroupImpl;5 H6 E5 I/ `6 v, ^
import swarm.collections.ListImpl;8 P- u. S% F' m4 J( E6 f; o
import swarm.defobj.Zone; 4 W' o" A" `: B0 o1 H% _- j" k7 j, Y1 ~
import swarm.Globals;8 z# v k5 @. h! P
import swarm.Selector;" `5 t, f0 F8 l/ e& h0 M
import swarm.activity.ActionGroup; * \& d; F0 k& `! x8 \" ?' `
class Agent {
1 g$ w# X( m" r2 z6 V2 y( d# J char id; H0 b% _* z0 ?9 O6 j% I* ]! I. Q
1 C7 d$ k) u! i5 Y0 a6 q Agent(char id) {! |! t9 Z2 f, b r& M7 n( a& w
this.id = id;, q, e0 K( t! l# |4 }4 K
}$ l& J8 g7 }9 O3 B" H/ a5 g
9 a5 s" @5 z+ a7 a
public void agentStep() {% e* u) k7 V" s& e& R
System.out.println(id + ":" + Globals.env.getCurrentTime());0 e- g1 o8 L! Z& M6 L* \
}( [, T; u" k8 C9 ?; y: A
}# y/ V. X7 j) ?1 i! B6 t4 Z
* c/ J+ N/ @$ p/ f1 vpublic class ActionGroupDemo extends SwarmImpl {
1 t- o, C% f: p1 |* J ScheduleImpl schedule;
/ N+ s9 ], v( S8 l+ L: i! j2 | ActionGroupImpl actionGroup;
2 f0 t1 q1 i0 r z ] ListImpl list;
3 _; B- t* \9 a+ \9 a char Id = 'a';1 J) v: @0 a5 _+ ^8 x
; P5 Z/ _" ?! h* K& I ActionGroupDemo(Zone aZone) {$ e/ Q* W+ {% y6 i. l
super(aZone);3 w7 y' D, h+ f: n# m/ k
list = new ListImpl(aZone);
: c# Y3 O$ Z# v" h0 Y" h+ _; C; h swarmSetp();
% o$ C) p6 M9 m$ h) E% m2 w3 C actionGroup = new ActionGroupImpl(aZone);1 ^0 E; p/ P4 y0 `, y- h
schedule = new ScheduleImpl(aZone);
5 y$ h- L5 q: [3 G o9 b try {
6 u/ Y5 w2 t, _$ E% M; h Selector agentSel = new Selector(Agent.class, "agentStep", false);& ?2 Q. E, i; v7 k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" Z4 v( i# w; m2 n! a* S1 Y8 y
( Y& C! t- I. R/ U1 _ actionGroup.createActionForEach$message(list, agentSel);: t, H8 ?/ `8 T; ~$ N
actionGroup.createActionTo$message(this, swarmSel);
6 h/ V2 x! w# A" H schedule.at$createAction(0, actionGroup);7 F+ R2 E+ L, ^0 O6 x, M
schedule.at$createAction(1, actionGroup);3 s @, U9 b5 w; r1 Q6 N
schedule.at$createAction(2, actionGroup);9 ]3 b- x( p% I' W/ I
6 y2 v( T( s7 F } catch (Exception e) {) j1 u7 G0 {3 a# w
e.printStackTrace(System.err); ?: h- V/ ?* z4 P3 ] E
//System.out.println(e);7 q% j- \2 i; h. u4 W
System.exit(1);% E& G, c$ c) V, c% o- E
}( V0 u. J# O1 b' t- }( E' T- X/ X
2 H6 `) f' }0 H
" i2 `, S$ U8 @
}
% a6 @$ l$ Z* o1 T5 w" }: R$ _- A' T) a! m
private void swarmSetp() {
( j1 x9 U7 p1 A9 o& o3 `7 O list.addLast(new Agent(Id));; B0 j9 m2 r, F
Id++;
% Y- P/ ]6 o* z! `4 K ? }
* I: f& A9 {' D e- J. x7 \
: A( _# g/ L8 W0 T$ C4 e% Z/ Z g3 J public Activity activateIn(Swarm context) {$ g; C( ?& O0 ^$ ^
super.activateIn(context);2 ]" |8 B& x! T; Q: a/ ^
schedule.activateIn(this);
9 U* K! j9 s# i$ W% c$ X2 _9 P return getActivity();
. _9 z3 o2 W3 t }7 B6 P6 v/ t! M
* U% N+ v/ Y1 g9 T4 J% K
public static void main(String[] args) {
# d2 q/ N: u2 O5 s- [6 v. C: A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) J* D6 q/ e, p: Z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ i, R6 A' {# R1 L" R swarms.buildObjects();" @2 z! N$ V) s: W; N5 q% \
swarms.buildActions();8 w* g% h- F* c. R" M
swarms.activateIn(null).run();: y, z. ^2 {+ s" [, ?& z3 W3 r* n
}
9 k; p( h% }1 }) a0 O& y4 V
7 V9 `* e& ~. U0 Q} |
|