|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 Z* e/ f( V5 L7 c# f/ C. H \
+ s; r2 m! o) G% x/ g, {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 U/ r5 z; j3 t& i% s, J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( W' s& Z# R0 L) M; l4 Wswarm.SignatureNotFoundException
* p$ _3 i( O: C! ] at swarm.Selector.<init>(Selector.java:76) M! c6 m& w/ A0 Z" P' k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! L6 G4 i5 B' O0 |! C
at ActionGroupDemo.main(ActionGroupDemo.java:67), K' b! |& i3 a z1 A: K- y; B/ N
1 G7 f) F3 E* G+ Y( L8 L
1 e( M5 q& F5 R1 |$ _
import swarm.objectbase.SwarmImpl;* y& ~; q2 |# s( \* Y% E' Z
import swarm.objectbase.Swarm;
) J7 O }; Q" e* G, {) Y7 H" mimport swarm.activity.ScheduleImpl;
$ u* }7 f8 t7 U5 C3 P" ^0 timport swarm.activity.Activity;
, b/ c+ V8 I+ Uimport swarm.activity.ActionGroupImpl;- q7 {' _7 _" n# t) V5 w9 U' z0 D
import swarm.collections.ListImpl;* a5 |' E6 Q, M2 V
import swarm.defobj.Zone; % {5 V0 p; J- {% V w1 i
import swarm.Globals;
# ^( W' D3 l0 p/ s1 Z. Y6 Simport swarm.Selector;$ }% U" ]2 S$ _" g+ L* L4 F6 V$ q
import swarm.activity.ActionGroup;
& L6 Q( h. N" u4 v) eclass Agent {
. h, E6 F$ s3 { char id;
) y8 z% p( R+ K/ w' K4 ^; m5 t/ x5 c" t s9 F
Agent(char id) {
, g( ?/ i; Z% M" i4 D% O this.id = id;4 O6 w( j, G5 ~4 V4 @) ]7 P
}
! w8 [# u) a3 h
6 V) D$ _6 v) N; J5 Y$ t x public void agentStep() {; @5 w$ N/ A) t
System.out.println(id + ":" + Globals.env.getCurrentTime());2 r4 @6 f- Z: W! |9 w% s y
}
b- a: N. ? G; E' C6 Z}3 x% U, b* g' R `: p
/ W) b+ b$ Q3 p% H" M
public class ActionGroupDemo extends SwarmImpl {5 C. b" Y# t1 i! U3 T+ K; U: n
ScheduleImpl schedule;
' O% R9 k: E! B6 P, X ActionGroupImpl actionGroup;9 I. T, j" q; A/ y2 `9 c$ B
ListImpl list;, s3 b9 b6 z y5 j& h
char Id = 'a';+ P& a8 g; Q, |% V- K
0 P* c4 z! n3 m5 ^5 S1 s% `
ActionGroupDemo(Zone aZone) {
3 q2 J1 P2 f8 c$ h super(aZone);
( F4 d$ c0 _4 Y list = new ListImpl(aZone);4 R# f/ E& t1 i" B$ o; _8 P% e
swarmSetp();
# {. J ?8 \8 ^1 I actionGroup = new ActionGroupImpl(aZone);: z" s8 K! S! E' d8 } c
schedule = new ScheduleImpl(aZone);
# s, ^# Z" C9 K6 M+ J6 D try {
/ ^: s }: n' }9 P/ F Selector agentSel = new Selector(Agent.class, "agentStep", false);, Q6 k, Y- t& y9 y- j# B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# Y7 v4 L; l" g; g2 _0 U6 f
& p A! f9 [, P- D7 K+ f actionGroup.createActionForEach$message(list, agentSel);
+ D9 h3 }; J: q& d actionGroup.createActionTo$message(this, swarmSel);/ |# ]2 {: G8 g' S0 ~5 B: J. a
schedule.at$createAction(0, actionGroup);3 y) R5 A7 E% Z% W9 N& }
schedule.at$createAction(1, actionGroup);% e K( @& ~# V5 B
schedule.at$createAction(2, actionGroup);+ Y- t+ o, [4 w8 q# e
' f. |; K1 S2 v k. ? } catch (Exception e) {; i% q- P) }5 n% T
e.printStackTrace(System.err);
5 k+ ^7 m: e3 l# Q //System.out.println(e);
6 N! N" m# v" b System.exit(1);2 [9 ^6 @; C$ P& a
}
. {; L- g8 k- I; B8 N; F5 q) J. |$ C2 Y* Z; a' P8 B
+ X5 [% m; J* A" s e5 H7 L }
% }6 V; A2 T2 j* f$ s7 d! |0 X9 P; K2 W+ |# i6 T3 U
private void swarmSetp() {
: T& q& J1 w( Y list.addLast(new Agent(Id));$ @7 K8 g6 \5 d0 l# C
Id++;7 @ W! N& b) G8 D5 T
}
8 x, }/ B' e1 z+ y) r9 h6 M, O6 d/ L8 h. W
public Activity activateIn(Swarm context) {$ h% v7 L9 F" P6 {! `
super.activateIn(context);
! a& ?. M+ w' Z! q( d% d schedule.activateIn(this);
' ?5 B# w; V7 {- t( Q( X! \4 f return getActivity();, k+ X L! N% Q' s+ [
}5 [4 A: I% t/ L; D2 y% T6 c: h% y
g4 x3 A$ U" T" P& ^ public static void main(String[] args) {
& s! ^4 m+ g1 O* w: j# w J& k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: }1 E$ S, c2 E: w- V7 L" }3 B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 E, L7 V6 m# p/ Z
swarms.buildObjects();
% V# f$ [/ n! T# h7 ~1 s! m swarms.buildActions();
% x# j; K; B/ {0 B swarms.activateIn(null).run();) {# ~& m7 y) y- T9 s
}
8 v+ w1 p7 ^) j3 | W- ?1 t7 m+ _4 K* c: n) w# L
} |
|