|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . O! E7 ]1 n+ X7 I9 G- R
4 ]8 ]' c6 Y1 t. ^ a9 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( ~% V! J' w7 z6 H8 t1 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 D" A/ Z \, g
swarm.SignatureNotFoundException |8 R1 h% r* _* `7 }
at swarm.Selector.<init>(Selector.java:76)
& h; i7 ~" I7 ^( ^+ D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 y. E+ s) T; B7 v( R% d at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 v& S& O+ ]5 M% N
1 w$ j1 ]7 |; M0 \2 B
; h2 q: y; j j7 @ C7 @/ D simport swarm.objectbase.SwarmImpl;
9 g; m+ X4 {. |8 }1 Z+ qimport swarm.objectbase.Swarm;% K2 C. ?/ Y( P) Y$ K
import swarm.activity.ScheduleImpl;3 k) _$ n2 d+ M3 b" |( ]
import swarm.activity.Activity;
& m0 x% f: J2 X0 ? oimport swarm.activity.ActionGroupImpl;
$ k4 l( e, R4 L zimport swarm.collections.ListImpl;. S3 |; Q) P; P. ]! I9 Y0 @
import swarm.defobj.Zone;
! S8 r! ]2 O8 simport swarm.Globals;' U3 S5 T& `/ ]% i2 P
import swarm.Selector; f% A) v, }% m+ L' b( V+ y0 f
import swarm.activity.ActionGroup;
; X* [" d% q7 }class Agent {8 w( p' }% E! P0 f6 ~) s
char id;
3 a- c2 D- _! s8 `8 G
# A( U& m! l' \; R: h9 j Agent(char id) {& M$ I, q3 D5 {4 n; b& p2 I4 x
this.id = id;
' ~2 c3 K7 N9 |! j' F }
2 `* m$ G: v7 ^ M4 n% {' R' {2 C6 k- Y4 Y: P6 b! W; y0 f
public void agentStep() {
. s5 Q' J0 F9 e3 W( x2 z System.out.println(id + ":" + Globals.env.getCurrentTime());
; Y3 B; x8 f4 E* e3 J" l e } N, V7 V0 b$ o
}
: A+ B% a1 X& O, \0 L" x$ r, x, |9 X7 Y' `0 B0 b
public class ActionGroupDemo extends SwarmImpl {! Z3 m, h( B6 I6 d
ScheduleImpl schedule;
. Z$ A% }* `% e: f! G0 [ ActionGroupImpl actionGroup;
! ^0 @3 M/ P7 g% r: D( H/ F ListImpl list;3 y" I7 d2 s7 [0 [7 i% N5 s# ]4 S
char Id = 'a';! E0 F+ t& L1 j/ k. o- k; `! o. W
# `) d m+ F. \1 ~% g% V0 d0 k ActionGroupDemo(Zone aZone) {% G. i9 n; d. P% y/ ~5 H+ V
super(aZone);
n H6 y& s# b9 W$ U ?" ]6 ]3 k2 u list = new ListImpl(aZone);
0 z4 q L, ?+ q$ y swarmSetp();
* z+ u" w9 U8 I0 _, C actionGroup = new ActionGroupImpl(aZone);
7 z& y) y8 c6 g; z schedule = new ScheduleImpl(aZone);
: B8 Q. m+ E' j E/ F) Z3 W try {3 R' A' m. q6 I! X0 l
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* n. t& ~9 V! s+ u& t0 f; _7 W# Y" s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 ^$ q4 q, A3 ^+ l2 N( d) \5 f8 x8 h9 q
. e2 K- \8 s1 n5 v* D- \4 M6 f3 ?7 x actionGroup.createActionForEach$message(list, agentSel);
+ j5 c4 ` v' b. P actionGroup.createActionTo$message(this, swarmSel);
* ^2 B6 G6 |# v$ W9 @: C schedule.at$createAction(0, actionGroup);
2 J1 V7 e$ I! G. d schedule.at$createAction(1, actionGroup);
5 |% B( D' b# s& p* ]& J' b: ` schedule.at$createAction(2, actionGroup);( u2 e( X# `2 P
2 \7 ?+ o: M0 j3 p$ w1 a, i } catch (Exception e) {( v, ^; H+ w: I3 P
e.printStackTrace(System.err);( y5 C0 n0 C0 q& r1 _- ^
//System.out.println(e);
( f$ A9 a$ V8 O$ ]! o k! g System.exit(1);
5 A8 _' O4 M- w3 ] }, }$ t, q1 O, D
5 W- u6 W U7 M' F: h$ n: x+ L$ N
1 H- _; l2 q% s! R9 L/ [4 F }9 u! n0 e: f0 K% c
) n" |2 k2 b; m/ s6 a) Y private void swarmSetp() {. m; W! _* ]1 \$ X3 j! M8 b8 J
list.addLast(new Agent(Id));! J! k+ s5 M$ v
Id++;7 b8 y$ ?9 ] D1 B3 o) u a
}
1 s+ U5 S# B) D1 Q- F" j, q$ v- {/ X. Q3 ?. y
public Activity activateIn(Swarm context) {
" Q6 Y3 c# N Y) x- ]7 A+ ` super.activateIn(context);
5 Z) v1 Y$ [' i. b8 b9 ]2 g- f# I3 _ schedule.activateIn(this);- O. z3 ^$ s" ]$ w
return getActivity();9 L, x$ b1 l. n) j
}. ^$ u! M; H# u# {- ~* {/ t
# G5 h0 k; I9 v& U- [
public static void main(String[] args) {
: r1 m0 j- q: T% j; U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& m5 L1 m' p# m' x. U( v0 H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* u: B3 |( i! }, v Z4 h
swarms.buildObjects();
# ~+ S) W( [3 b4 q+ @3 Y/ Q) [0 M swarms.buildActions();
7 |9 J8 z$ F) ? swarms.activateIn(null).run();/ }5 h& }& H$ x* U, u* ]$ Y
}3 {! e' E& O% J' Q/ v: u- Z. ~5 R
$ M- m w# c4 W2 }! G- U% e( j2 v} |
|