|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * l m# `. p `/ g4 ]
7 v V2 t# q5 F7 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: }! a7 Z; K6 n0 ~) y' U$ B; d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% i, j% X9 _' ^+ ^ P6 g7 H" bswarm.SignatureNotFoundException
; Q0 Z C! ^. t at swarm.Selector.<init>(Selector.java:76)
1 T/ d9 t$ i0 V7 q6 _- G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 k- g2 \' v# |* o5 b3 x$ o, c at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 i( F2 {' H+ v. L$ E
! F: z1 K/ o) b9 ^5 i* a3 }" x/ j2 P( @
import swarm.objectbase.SwarmImpl;
3 S/ o! d Q( Q: ]2 c {- cimport swarm.objectbase.Swarm;/ |5 T, j7 H# ^5 v' d5 @0 ]. |
import swarm.activity.ScheduleImpl;
" d3 `$ j6 Z! a' e" y' D) Wimport swarm.activity.Activity;
D$ f N* J1 V/ I+ C. E. Q( Bimport swarm.activity.ActionGroupImpl;! ]8 Z" v. ]3 T
import swarm.collections.ListImpl;: K+ K/ u9 t; O' e- Z
import swarm.defobj.Zone;
# B: Y+ e/ a: w Z* limport swarm.Globals;9 b1 d! w2 c G
import swarm.Selector;
& V0 D/ Y. z5 C$ Rimport swarm.activity.ActionGroup; A0 E: r9 \+ D6 \, T! z
class Agent {
$ J# g" Y+ M! s char id;
$ U, x- q8 p7 E) ^5 j) F( T% u1 q; M
Agent(char id) {/ e, d- c% ^0 e
this.id = id;7 b! v& l0 t: x& t& w+ g
}7 N) ^" F0 P9 D$ A' }3 D8 j
0 H J) Y; x) S( q2 o4 n public void agentStep() {
; X" q, o- \( Y/ ]9 R% p System.out.println(id + ":" + Globals.env.getCurrentTime());0 \$ V' v# s# A# T# U
}4 E' r0 N! G g/ _
}
5 k* R. r/ W7 Y3 S5 ], B- I$ O
3 ^0 k+ X; h3 B4 A% }8 D) \/ Bpublic class ActionGroupDemo extends SwarmImpl {# ^) j' H4 b" A* n& }) s6 S# @
ScheduleImpl schedule;4 _6 X9 p, G1 |% V/ @ y/ m
ActionGroupImpl actionGroup;
6 _6 G( [4 v, {( N ListImpl list;8 z6 k$ p( M$ X% Q. ?, \" s1 a
char Id = 'a';+ F, Y5 v0 W9 T9 [
0 `. N0 u. F: a# U ActionGroupDemo(Zone aZone) {: i3 [) e6 u$ U% ~
super(aZone);( W% ` Q" A7 I5 `
list = new ListImpl(aZone);: Y! N+ E6 F; r- I! M: _
swarmSetp();; o' _% z" l. J- c
actionGroup = new ActionGroupImpl(aZone);
: a4 i9 V$ y( p1 X. R. r7 k schedule = new ScheduleImpl(aZone);0 F( j+ G- ^! s) [
try {7 Y9 m9 R; V8 V h" r
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 Q' {. n! v. \& R0 J6 S) Z2 d/ e6 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 E9 H/ C9 y/ V: ?. v% [( g
( V$ a* L7 i/ F- k0 c6 i1 H- \
actionGroup.createActionForEach$message(list, agentSel);
% R, l+ W0 a- L: \2 i9 B actionGroup.createActionTo$message(this, swarmSel);
4 {: ]8 |% ^4 u schedule.at$createAction(0, actionGroup);8 J5 {- r1 H! B1 D/ h8 y
schedule.at$createAction(1, actionGroup);
. F) e# ?! | m8 L schedule.at$createAction(2, actionGroup);
$ {9 r7 d6 e6 l" V" G6 H) Y1 B5 Y+ N8 g, K6 V
} catch (Exception e) {1 ?# G b7 C8 d7 A4 x2 F: d% M3 y
e.printStackTrace(System.err);
/ _) d8 F3 Q3 \ //System.out.println(e);% d3 e6 M# z5 P4 A6 ]! b
System.exit(1);
6 g L1 u4 @9 f0 W5 ]" d5 Q' E }
; y: D0 [3 G. C& [) g* \) Z) d9 h2 r& s2 Y( o Z8 C ^
- d; k2 n) ]( G( I. F* a6 N
}
( l% ]( @. E5 s' Q1 |8 }
+ Q5 S8 i! |' P+ I! `" J3 K private void swarmSetp() {5 K7 Z' K4 w, z6 r
list.addLast(new Agent(Id));
$ x6 A! f+ I0 J0 J6 P. u! b Id++;* Q4 g e! l" y2 x* X3 l$ G
}0 O( \& ~& @- g0 _9 N
! s. a5 @/ m& w7 l
public Activity activateIn(Swarm context) {
3 V S. C: _# M$ T super.activateIn(context);' W4 n+ ?* c% h: v# f" H
schedule.activateIn(this);
+ C9 e: F' A! ?6 U m# i& D. p return getActivity();
4 x5 c; K' R2 ^, B# r }
2 p ]" M: s, l. t7 B9 s' L9 O8 R% s
public static void main(String[] args) {
; u. j" `" G9 z1 M8 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); H+ s `/ J3 g4 z' \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* A1 k1 m# M4 L# x ~: h) O
swarms.buildObjects();4 ^$ q* B4 h$ P& a7 V [; o
swarms.buildActions();3 n* M4 d/ O$ G: K) A( }8 _$ J/ u
swarms.activateIn(null).run();
7 s: e; ], D* v }
9 N9 j K! {4 F7 v7 s/ v& b; Y. X }+ J
} |
|