|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! U" k, U) Y' Z) z! ~* t/ ~' q, b M- w$ u% ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 F- R$ b& u/ n% S; ~! M& L# c' z ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# V: S C7 Y( G7 w; wswarm.SignatureNotFoundException
) F9 c; n* v( j$ x4 ~2 |9 g6 N at swarm.Selector.<init>(Selector.java:76)
0 i+ E. Q( S' n6 ^) L) F7 ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 A! u K' q# C' P1 t at ActionGroupDemo.main(ActionGroupDemo.java:67). _* ~/ i9 d, g! p3 n1 ^ I
( ?* |; x1 U2 G* D- [1 j0 N# `
5 O7 R8 G, `0 V+ ~import swarm.objectbase.SwarmImpl;1 u: `( m% f4 C' I: p; L- i8 o% \" D
import swarm.objectbase.Swarm;5 m( X. |" @( d% L) u0 _% u; j
import swarm.activity.ScheduleImpl;- o" a! ~% C; u y
import swarm.activity.Activity;$ o2 a& Z6 [: |+ r0 N B) J |; X
import swarm.activity.ActionGroupImpl;0 S/ Y5 w4 v9 g0 ^0 P4 e5 T
import swarm.collections.ListImpl;' |! A) K6 ^, G; s4 m
import swarm.defobj.Zone;
2 n& B* ?$ ]1 X7 F% limport swarm.Globals; Z. \: I9 Y. m1 R2 j& l" ?/ x! E/ i
import swarm.Selector;
* K3 A% q8 S- I% simport swarm.activity.ActionGroup; ( D/ M. ]2 r: b* G, X
class Agent {- q; G, n4 i# I3 i! _9 K' E
char id;
x2 j. P& W3 c: r: M8 C
3 [& [ x7 f& j* Y# g* ~ Agent(char id) {- V% i( D+ }6 b {5 @ X7 ~
this.id = id; u6 F# h$ x3 S! V, m# u
}
; n( H* O4 c R7 c$ d0 r7 ^' f# C9 H0 |( p% k0 `2 s/ z
public void agentStep() {' [8 Q6 F' g4 d
System.out.println(id + ":" + Globals.env.getCurrentTime());
( G$ A% @8 A" X. G S }4 }9 v7 f! i7 h
}
% C9 {+ r( @& H& w- i9 a o
) p5 N1 X# t! B. C: `2 Y9 gpublic class ActionGroupDemo extends SwarmImpl {
+ F X/ \8 C9 k ScheduleImpl schedule;7 i. C$ M+ B. J$ D& J# q9 I7 X
ActionGroupImpl actionGroup;
x# _' g0 Y" ?: {! g' n$ Q% M ListImpl list;
/ ~3 c( j, U+ P% E1 w# S8 l char Id = 'a';4 m1 H; {# U! h, \, K
% n m" R' J( [8 P4 \ ActionGroupDemo(Zone aZone) {' F: N. W, q+ b( K
super(aZone);5 K( C! V! y, E7 U5 s
list = new ListImpl(aZone);/ d4 Y8 N* b1 z4 G" [2 M
swarmSetp();
9 ^! R9 _4 F3 y) j# V3 k7 _ actionGroup = new ActionGroupImpl(aZone);
7 c, n! O: a! r8 [- k schedule = new ScheduleImpl(aZone);
8 t2 _0 k2 k. v; {+ Z0 O; z try {7 [2 R& o5 B' y! M
Selector agentSel = new Selector(Agent.class, "agentStep", false);& Z- K" C1 r% k. i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ X) d3 }1 H5 R5 Z# Q Z, E: f" R
8 ~5 A& L8 v- D; |" o+ v; A( @ actionGroup.createActionForEach$message(list, agentSel);
" |8 m. Z L2 T, b4 f7 U actionGroup.createActionTo$message(this, swarmSel);0 |$ e+ Z4 U0 L5 C" ^
schedule.at$createAction(0, actionGroup);
: |4 l+ D8 D9 v* g0 M- I schedule.at$createAction(1, actionGroup);8 U/ l" A; S' h% I" N
schedule.at$createAction(2, actionGroup);% A& ]5 b9 O( e8 p% m
4 w$ Z3 R% w' j6 X Z
} catch (Exception e) {' j* K8 e$ V: r2 [5 [+ h. u
e.printStackTrace(System.err);$ q6 D! R; s& z4 m% f
//System.out.println(e);
$ K/ C' B1 @- k9 b( l0 u& r System.exit(1);
$ q# @( z/ r6 m }# r3 d& U: I" Y1 |( S) H9 b1 J: p, {* x
3 |0 B$ {$ A: q; Z8 n
! f: V& Z4 K5 o6 }) } }
8 c. l- O( f: d M1 l/ m6 @3 F; f( w1 L$ i N" k
private void swarmSetp() {2 m3 T; L* X! v( @) H
list.addLast(new Agent(Id));
" S) _. \! I' p* m Id++;
- Q; M) }' N3 h S }
' E' f5 h: T: x$ E1 F
+ q. y0 }# ^5 m8 | public Activity activateIn(Swarm context) {2 `7 G% ^/ H9 A2 C. z" P! u+ c
super.activateIn(context);! }% P0 k* ?4 C7 \
schedule.activateIn(this);9 P! C; R% ^; B- w0 V7 U4 u9 ?! }
return getActivity();" Y3 C4 ~4 k0 T' @3 Q
}
" X9 K6 S( }. |% w1 a
: c6 \ `9 |4 `; o; v( S: ~! S! f( H public static void main(String[] args) { q( M. m' ~4 }; X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 x( ?( Y) c( q8 c4 [& ~( s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 b; n. O9 ^$ c8 J, I
swarms.buildObjects();! x" R) U# H# L& I& O1 U
swarms.buildActions();
2 v; y' z8 {2 @4 V# R swarms.activateIn(null).run();% t+ V6 s, i8 W
}7 }. p+ R6 \% S) @5 a( B+ C
' X/ F5 a# {6 n7 V, k7 @# j6 B} |
|