|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " h) b* h6 Q K6 ], h& P
$ B5 i+ W7 h! z6 c6 }' Y" s& Y: Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! R% N; {1 b U8 F9 G( d5 H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 O _/ g2 j' n. z" U
swarm.SignatureNotFoundException2 q( L4 j7 i) L' z
at swarm.Selector.<init>(Selector.java:76); u! p* }' ?% o2 B3 T( M. u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 T! L/ i3 `4 f
at ActionGroupDemo.main(ActionGroupDemo.java:67)( |: a$ ?' @; H+ `. U5 s
) R7 j+ I. u* s( [6 Z4 v( o: U
2 v* b& L/ {3 g/ O1 M3 Rimport swarm.objectbase.SwarmImpl;
5 T- \/ d* N2 k0 ]7 \import swarm.objectbase.Swarm;& {# ^* L- _; f& ~5 ]1 S
import swarm.activity.ScheduleImpl;4 m9 e6 T# m; t0 t' _6 Y- I) X
import swarm.activity.Activity;3 U$ t0 T( A9 {- L/ ^& J
import swarm.activity.ActionGroupImpl;
" z, ]% l* ?( X6 X1 | dimport swarm.collections.ListImpl;3 S' a) |$ T0 I+ z2 g! i+ P' X" n6 Q
import swarm.defobj.Zone; & ~9 I$ {% O, ?8 q5 d
import swarm.Globals;; \6 O7 v9 q, |6 |8 i0 [2 j
import swarm.Selector;7 f0 g; L* R5 T& ^, @7 V
import swarm.activity.ActionGroup; + ^! F7 E% f8 h$ }+ d& T0 v7 k# T% F
class Agent {2 Y0 p( f/ ~% I! w
char id;
- _5 t6 k! ^ A. F
3 h/ c0 P8 E* N2 y Agent(char id) {
* X% Z0 X+ x& d+ Y, _ this.id = id;
& U: U7 p' y3 F3 j8 X; g }
* d- B3 x- A: M- J% [3 B. n% ~
9 q N$ i$ ]) ^+ d& R public void agentStep() {& c; H+ n" h; d' `
System.out.println(id + ":" + Globals.env.getCurrentTime());0 B9 m* i" u1 {: w3 U- h+ i7 ?
}
3 ^0 a% b0 z% J. [: K* |7 a" ^}
4 A1 Z! Y8 \9 h: H2 x6 R) b& @! }5 ]: _1 }/ q) {
public class ActionGroupDemo extends SwarmImpl {
+ [" _1 [' C7 r ScheduleImpl schedule;0 p+ X2 F1 U" o7 `4 I
ActionGroupImpl actionGroup;2 h) L: [% W2 E+ T! T- g
ListImpl list;
/ |* C# Y1 D% P v char Id = 'a';
- c) Z/ R1 l. b" h" X6 W7 r, @. E% F! e" ^ ?4 h
ActionGroupDemo(Zone aZone) {
+ p/ T+ M; Y, w& J7 p2 z5 ] f! n super(aZone);
% p% ^) W+ Q9 ?; ~ list = new ListImpl(aZone);; R6 h' C5 {' K# o$ @; _7 G8 V5 |
swarmSetp();# A1 e* y$ n8 C) A# _% x/ G/ F
actionGroup = new ActionGroupImpl(aZone);' P% o @) `* F
schedule = new ScheduleImpl(aZone);. [+ Q' X2 p4 S
try {
, }$ J- A) x8 @. { x+ { Selector agentSel = new Selector(Agent.class, "agentStep", false);* k' ]1 G% _/ A0 l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. w4 ^: N! p# j O
' b4 u0 \+ r& \. M actionGroup.createActionForEach$message(list, agentSel);" k6 a9 P% L$ U( J4 T
actionGroup.createActionTo$message(this, swarmSel);0 ?% \) s k& u' y% z
schedule.at$createAction(0, actionGroup);
! |: y* N+ `$ [7 W l schedule.at$createAction(1, actionGroup);
2 T" o0 p0 e3 P" d D schedule.at$createAction(2, actionGroup);
% b; P" l0 Z1 t, q" C) Q6 F" T: L, z; V: b/ q: H
} catch (Exception e) {
, x/ c# {7 }1 f, X e.printStackTrace(System.err);
! K) o9 b9 J" _1 q7 ?- w //System.out.println(e);, U2 l' v* b% c
System.exit(1);, P4 ~' x7 v8 d5 I1 F9 R, j% \
}$ o) X$ j1 a4 C4 M( A
+ T: m$ [- A2 |/ _# d; u6 c6 O
& s* }+ Q. v* m" Y
}! ]' \$ O. ?. _" n6 v# d8 F+ i! ?
7 l3 q7 q4 v1 E" K6 d
private void swarmSetp() {8 N. M+ E$ T& v' b% a; r
list.addLast(new Agent(Id));0 g( Q$ ]0 P0 Z1 k6 h0 M# s; I/ f
Id++;
- n; Z+ f+ B, \' J, F }
Z" P4 R: _ f' X& J7 w& B; P3 R* ]6 l6 o
public Activity activateIn(Swarm context) {# i3 B2 |# S( K3 ]4 }
super.activateIn(context);
" ~1 G9 e$ I' o6 c3 m% H i schedule.activateIn(this);
5 {+ q7 r$ O4 j& [; B% i return getActivity();+ b$ M0 }9 ?$ W9 t
}
" j- J! G# U8 m, s/ g* U
2 Y/ r5 D( q: h6 q7 U9 T' \; `6 \ public static void main(String[] args) {' n6 ~9 W! x# q) z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 D4 g0 D V) g% g2 U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; W- \( G: j9 z# w" k1 V5 b: q swarms.buildObjects();! h" m7 J6 ]2 v9 O
swarms.buildActions();
4 ^) }1 N0 f% {9 L/ {$ A swarms.activateIn(null).run();
( f$ @! k3 C5 U) k) q- L: ` }9 v) B: C0 f" y
. L3 p/ O1 D R! r, _} |
|