|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: D' I9 h r4 c* c. C
; s; y7 |7 _1 Z0 U! Z* N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" U4 f: q2 `/ h4 o4 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# k& C+ G1 Q z" h1 W7 l; Vswarm.SignatureNotFoundException
( z0 d3 l5 c) }6 C, R7 Y F& _ at swarm.Selector.<init>(Selector.java:76)' m' B$ i$ I: _% k* i
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- p8 X' ]" j0 o7 ?8 Y. O | at ActionGroupDemo.main(ActionGroupDemo.java:67)" I C9 R% @0 [* e/ V+ v# Z
) W" X( r2 R5 s
& S6 y; W& P; b8 ]3 c6 Dimport swarm.objectbase.SwarmImpl;4 k+ {1 F, x7 I, k+ W
import swarm.objectbase.Swarm;
5 g) r9 }% J2 h" Wimport swarm.activity.ScheduleImpl;0 p# Q" u' h( K/ z2 I
import swarm.activity.Activity;
6 |2 k+ v. v5 }; q9 E! pimport swarm.activity.ActionGroupImpl;- d; ]: a5 D7 W( n) j1 \" g I
import swarm.collections.ListImpl;% x4 S; G. d7 `
import swarm.defobj.Zone; % N1 z0 G+ M8 p
import swarm.Globals;1 f4 Y* k2 e4 @# z9 a: w- o
import swarm.Selector;
# `, |8 M. y# V# z# Y! Timport swarm.activity.ActionGroup; & u2 } w4 n- f+ o
class Agent {7 W, Z7 f5 P+ F0 H2 q" h* }0 H
char id;
% R/ }! M0 h% `0 `$ w" ?0 U, A+ Z" e. k1 A1 u
Agent(char id) {# j. i7 e1 O1 o5 m
this.id = id;9 H m# b- b& x+ x
}
2 \6 | p5 f7 G' q; r7 ^! ?
1 B+ ]2 G" v" F2 b public void agentStep() {
; i% x D; n$ A; O3 ?" U System.out.println(id + ":" + Globals.env.getCurrentTime());
& T) O. K) T: j }
' w0 ^7 t) M- b& w, i# Z- O, _" ~}
+ n5 |6 `$ y/ Z. A- S
* S6 y2 e! Y5 L1 c$ Spublic class ActionGroupDemo extends SwarmImpl {' k& A7 a$ y4 Q* {# }" U8 H
ScheduleImpl schedule;; E# ^% L7 p0 _0 R" y
ActionGroupImpl actionGroup;* J- c0 f% j% q- `3 z. O
ListImpl list;
3 x# ~; {1 N, V' F; w: x0 w' d char Id = 'a';
) S7 |( ^8 ^6 R' t* r
2 Q5 C4 k( x$ W$ p& e! a, ?3 @ ActionGroupDemo(Zone aZone) {
: ?+ i7 J+ Z% F" G* W1 k( H! u1 P super(aZone);
9 n% V3 D5 B3 M& s) i list = new ListImpl(aZone);. }0 r& P1 H9 T1 \
swarmSetp();+ P7 V. m" l" V7 M5 [. W
actionGroup = new ActionGroupImpl(aZone);
0 t& g, `3 i/ j- u7 }+ {# Y1 l3 W schedule = new ScheduleImpl(aZone);
. t p8 p9 f8 Z+ a, H, G- q try {1 I; w" o: j# L0 ~, a) [% X
Selector agentSel = new Selector(Agent.class, "agentStep", false);: p4 ~$ a8 D8 Q7 Y) \# E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ ^3 H0 q0 u6 d" H8 w" V
6 }. v4 |0 _+ z: j+ S+ B
actionGroup.createActionForEach$message(list, agentSel);
* {) E" |+ y- {# v) k actionGroup.createActionTo$message(this, swarmSel);& I" }2 Q% o# w! B- T2 h; M
schedule.at$createAction(0, actionGroup);- [: A! z3 E- G& m n [( Q. `
schedule.at$createAction(1, actionGroup);
/ A# g: `. W9 u4 a0 L5 N( t) k schedule.at$createAction(2, actionGroup);
0 h! j$ |2 ^) N; a% F5 D* Y
. j! [. W, b* j# L2 p/ B } catch (Exception e) {
% K! F' q; q& `. [/ R% p e.printStackTrace(System.err);0 R: a) I1 g: p. p- |7 W+ v
//System.out.println(e);! W. M6 y n' _) }5 `; ]+ ~
System.exit(1);
5 B! b' i& Z/ U }
' r/ [7 N% c, i6 m0 I
2 o, l6 \+ R' ?3 {0 p! M) j" e
4 B# y# O* g5 e2 l% h6 x }
# y+ s' S' w3 u7 |+ g2 N* f* Z% V j/ y* Q F
private void swarmSetp() {
& M8 |; q' l8 h+ t6 d. [$ Y1 ` list.addLast(new Agent(Id)); l8 t# Q2 V: d- ?5 |" N; |
Id++;
" @4 N8 b T! U; b! z: k, ` }2 T0 K. h& C& T1 ?1 q& a) c3 h/ k
. {' \/ T$ E) a# w, b% X
public Activity activateIn(Swarm context) {% o3 Q" W; _3 J5 ?7 L
super.activateIn(context);
. {- t% @7 d! z* B schedule.activateIn(this);
4 P0 @' f. [3 A return getActivity();
9 J3 S, E- D1 i }
! s6 Z D6 m3 M. g/ X0 H* [4 @# ^' r+ o/ Q, a
public static void main(String[] args) {
8 g6 O! @) a3 `! U% f* ]. ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 Q5 r' L h4 M y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, _# J. j) Y6 |8 L+ o' I& D
swarms.buildObjects();
9 o9 Z c: K, M1 _) t2 v0 P swarms.buildActions();& J: i% ^) p6 t3 C0 H3 Q/ t/ q( X; S
swarms.activateIn(null).run();
# K4 V: |3 p+ K2 E4 x% ` }
6 q$ ]" Y( X7 H- U
4 ` ^4 U- F6 Q# o, Q- _} |
|