|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% Q0 j% r t. S4 I3 u' L" `* k% e X. M( d! T% q) R- E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% ~: K8 E( h1 j8 G& k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! a# b. C5 L0 H7 P! J9 T# ^* e3 {swarm.SignatureNotFoundException
5 W3 J1 p; b9 K% ?: Y" H Z4 O at swarm.Selector.<init>(Selector.java:76)
4 ?0 f4 ~4 u4 `7 y" H% Z' T at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# i1 v7 [2 A* j% j" C! i5 V
at ActionGroupDemo.main(ActionGroupDemo.java:67): m- R- F$ D, F& N6 S, [
6 d( b' F; Y' f9 s
; L+ {- n7 p. n, n
import swarm.objectbase.SwarmImpl;/ ^# X( r' B* T! K; q, _; r/ v
import swarm.objectbase.Swarm;7 N" m9 q1 C6 J6 D7 r
import swarm.activity.ScheduleImpl;4 x5 Y- Y3 \; r8 U" G, l2 k' U
import swarm.activity.Activity;" a; C6 @- l) p' N% c4 R+ k
import swarm.activity.ActionGroupImpl;0 ?' R3 a9 D5 A, j% z0 o# l
import swarm.collections.ListImpl; @) Y6 I8 ?, T$ ] G
import swarm.defobj.Zone; 3 \+ j; x2 |2 {8 [5 d. @2 {2 R
import swarm.Globals;
1 Z$ H- z- M# U$ a9 `import swarm.Selector;4 Y4 w) `$ d: R
import swarm.activity.ActionGroup; ]( ^' W. E3 o7 f( v. `9 }% e
class Agent {% D1 {/ f2 L) T+ |- i4 f- B2 j- p4 a
char id;' s; M1 G9 J, R* W; t" P0 ~' g
# D3 Y/ M1 e& C1 n* I
Agent(char id) {
/ E& x1 o( j( D: E( U/ ] this.id = id;2 G% ?; a, I) S
}
! w; |" ]- N `
1 ~; D$ [; V5 v8 w- o8 J# T public void agentStep() {$ u7 u7 h2 v8 g) k+ d
System.out.println(id + ":" + Globals.env.getCurrentTime());
' j0 E# s6 y; r, }' ] }. `' T+ ~/ n* |8 C: o9 g4 {, d, I: e
}* |9 T% g) Y# _' k
9 f" Z2 L1 \* g& p; n" e3 V% ~
public class ActionGroupDemo extends SwarmImpl {" A$ I( L' u9 ]1 B$ h8 C
ScheduleImpl schedule;. T( t; x5 p) y" ^/ }, g& k0 X
ActionGroupImpl actionGroup;
7 q/ d$ O8 b: h" Q9 Q) P ListImpl list;8 F ` Y8 [- w0 n9 f! M6 ?; m! b+ ^
char Id = 'a';
3 Z3 g5 X0 `2 I8 |1 X0 b2 ^( c. k5 f) l6 F; c
ActionGroupDemo(Zone aZone) {
; K: C+ {4 s1 f super(aZone);( E4 ~0 p- I5 u. I
list = new ListImpl(aZone);& Q3 U9 z- w& C- w5 A. e
swarmSetp();, I$ W; Z* l' l" O+ G
actionGroup = new ActionGroupImpl(aZone);
2 p, M; ~! q9 Z/ \/ m schedule = new ScheduleImpl(aZone);. |* P7 M2 A6 n! u- ^
try {
- i2 F+ D/ a9 t E# m: } Selector agentSel = new Selector(Agent.class, "agentStep", false);
. L( b( E0 x' H6 x/ z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( u' d* A! k$ x9 m
: q- O1 H; I9 m/ A actionGroup.createActionForEach$message(list, agentSel);
6 y# I8 V5 b' w( k actionGroup.createActionTo$message(this, swarmSel);4 n+ p# T$ N! r! `) j
schedule.at$createAction(0, actionGroup);
4 z, Y6 b/ D5 D3 I- }. W schedule.at$createAction(1, actionGroup);1 u' p" {% R) S) \6 ?/ A
schedule.at$createAction(2, actionGroup);, `+ I% d& K# N7 U$ G5 ?
# b" ]( o* {3 Y. p' S3 z( _ } catch (Exception e) {
+ |" ~& [1 J5 x- b2 T/ ]0 z3 j e.printStackTrace(System.err);
4 q: `+ L9 n0 c/ s7 p5 {" U //System.out.println(e);
# k4 t+ z9 v' n System.exit(1);' w6 C& _' |1 O9 ~$ D
}
) g1 S1 g% a9 U- {( Y- E
) N q. ?, x8 S; t n. |. A1 l x. c% ^0 Z S7 l8 ^
}( t+ F9 c8 {9 j% K
& }: \* v& r8 w# o8 H1 e private void swarmSetp() {
r0 F, B+ k* ] list.addLast(new Agent(Id));
/ g) I( Q0 e) [, S Id++;- S, w1 b# O( }* W' E$ w+ X' `
}
$ |( O/ e. j7 z" G. [; t& z0 D9 K3 P+ p) y
public Activity activateIn(Swarm context) {
, e( h6 l8 _1 t super.activateIn(context);
8 A3 m- l7 [+ O" o/ f+ n6 f schedule.activateIn(this);" M9 Y/ |. `+ y
return getActivity();
, X2 V* [8 L" N f- ^. B7 L/ S }& J" N5 w6 z# u6 `0 U
- z Y$ U, ` B# [1 G* Z: R
public static void main(String[] args) {/ T1 e7 o3 A# J/ U$ n k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; ? V. W1 f8 \* U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
P' ]4 u' U, f' X H swarms.buildObjects();
4 J# r- w. `1 P/ N# j swarms.buildActions();5 u3 L; V! k& e' `- Q
swarms.activateIn(null).run(); n* a: Z b1 b3 ^! b4 }
}
& E1 \3 u# N8 e3 ~- [# \* G8 x7 e! o% x4 I3 Z2 M1 m
} |
|