|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 y& j3 V4 V0 x7 N
$ j; i; L. G1 d* x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- G3 n$ l9 ]* k" t& j) k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 y. _1 n7 o( k0 nswarm.SignatureNotFoundException
/ W6 x* W' |2 |, J5 c at swarm.Selector.<init>(Selector.java:76)" I) A* @2 d2 J' L6 ]; v: u4 e. J" p$ x( ]
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 s$ [, P3 e' G1 ]& B" l
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% X2 H9 _1 }1 m8 L- h+ b
5 |* |7 j t9 T3 {& } P7 I# u0 H+ L, Q9 ] L
import swarm.objectbase.SwarmImpl;% P! @% g: }$ ~
import swarm.objectbase.Swarm;
( j ^- \4 j% r" h% @6 nimport swarm.activity.ScheduleImpl;
E" S4 M# L8 Eimport swarm.activity.Activity;1 h$ y1 f& ~/ X- `, s3 x
import swarm.activity.ActionGroupImpl;5 s7 \9 b1 ^. D" F# P* u
import swarm.collections.ListImpl;
2 P# T' k( K; O e% Oimport swarm.defobj.Zone; " d6 r) _. k1 o) O0 F" C! ^
import swarm.Globals;" n3 l ~3 l" p) y
import swarm.Selector;5 O. H1 o% ?/ g/ R
import swarm.activity.ActionGroup; ) X. O1 z6 N5 E
class Agent {1 C8 ^: Y/ ]; |: ?& q {! O. X) T
char id;! m4 ^1 o3 A* G# T4 p2 d$ ~" d
+ q5 x8 A& I& k; J7 L
Agent(char id) {
. ]7 N$ o# D) {" L$ G this.id = id;4 J/ E9 S q0 T& i6 ~
}1 {" B P8 j( `5 k9 r+ c' _
. l4 Q4 L2 G; x. s, n/ Y* E5 x" _ public void agentStep() {
" w: T; z6 n# ? g1 Z% ^) |, T System.out.println(id + ":" + Globals.env.getCurrentTime());
7 ]* W8 M4 D9 U8 {- C9 H l }
: n% Z7 ^* t& w1 L& M/ F}4 l$ s$ S; c" p% r# E- q9 E& o
. ?/ I* y6 O6 ^$ c6 h6 B) A; spublic class ActionGroupDemo extends SwarmImpl {
( N$ z0 r! c9 [$ u% N# H, u ScheduleImpl schedule;+ z3 u; ^- k2 |# Z( _) d% B% I
ActionGroupImpl actionGroup;% o% L. H; _" a; }
ListImpl list;
) ]! B9 D; h0 F1 k! N char Id = 'a';
5 J' k: w* w! b% M# F v
. n1 n6 D4 ]$ W# I; N* X ActionGroupDemo(Zone aZone) {
% o/ V+ T' X& D8 }& M super(aZone);5 c$ J8 Z, A2 s1 ?
list = new ListImpl(aZone);1 z: i9 H$ H1 [+ e+ `
swarmSetp();
$ g- j( O6 t7 B; z9 u actionGroup = new ActionGroupImpl(aZone);
& E: C$ G" z# e+ f- R schedule = new ScheduleImpl(aZone);! i0 {7 l+ S+ \4 O) p& q" H8 x
try {2 Q& z8 P0 u7 X. o: {
Selector agentSel = new Selector(Agent.class, "agentStep", false);& T9 N% I' ~: [- M# n. A( I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( Q# h8 u4 M, `0 a" [8 B- R + O4 f2 v; J7 J: q0 H( u
actionGroup.createActionForEach$message(list, agentSel);1 a$ t% S1 [6 s$ g
actionGroup.createActionTo$message(this, swarmSel);& u, F4 F3 P+ s
schedule.at$createAction(0, actionGroup);
, _" ^) z9 ]* t7 _# u y. l8 L, K) F schedule.at$createAction(1, actionGroup);+ s; a. i/ E5 A4 {; a3 k
schedule.at$createAction(2, actionGroup);" w! ^- i. N; W; L: t6 e' a3 J/ ^8 f
+ n* ^1 W' h# a1 D# t! l } catch (Exception e) {
" C; m a2 v, k& t" q- P e.printStackTrace(System.err);8 Z. L4 |" R5 \7 b0 }
//System.out.println(e);3 ?5 j4 K. q7 K# S6 @
System.exit(1);5 _* F; N# o$ _9 Z4 l) @/ y
}3 d. `' _7 w) H3 o* M% _4 l* ]
$ w" H' O8 C' I# r
$ N8 I' ]* q. ^8 g- t
}8 j/ U+ }9 q; X1 @7 g3 J# L2 ?2 n
( C+ Q2 E! ^) c: c& w private void swarmSetp() {
3 k* R7 ~& f6 h. E5 D list.addLast(new Agent(Id));3 h; \3 p4 u- ^' d, |+ T8 n7 @
Id++;
7 R( G, t4 r8 A: h }( W6 R. B# r+ o- S) d
8 z0 C# \5 D. j3 T+ }0 ] public Activity activateIn(Swarm context) {( B( {1 O4 C9 P& s; _' j; N
super.activateIn(context);/ M2 C" }5 A: \* E0 l
schedule.activateIn(this);9 L- ] w0 V; `% [# C+ J0 R' T. T- X
return getActivity();
0 V: G+ ], k7 h9 _ } r6 P& h0 A8 s, D5 k, L
) b, T- T B3 E b
public static void main(String[] args) {; u; _5 t L) P) i7 c) x
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 {* a) A0 U1 z4 D4 l* L; H- v Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 K, \% h1 O4 w! e swarms.buildObjects();: ^- c2 y" _+ Q; t' E3 C
swarms.buildActions();
; P u( `: A/ } swarms.activateIn(null).run();
5 x' r( V/ w) p) L+ _ }
) O; L1 q* b( | H- z$ ^) M
1 Z# T6 O# _4 W) q/ r1 {} |
|