|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( P& o! D9 _9 u( ?( e' T$ t9 E' N! t6 G
+ H' g, Q& n4 s+ ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. D* \8 @ |. }/ Q ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% g1 b R. l% B4 t2 x
swarm.SignatureNotFoundException1 {# `* ~- e' W; ~
at swarm.Selector.<init>(Selector.java:76). K$ v/ R, J; _( S( S
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ [5 J1 t8 |; e1 r1 \2 b
at ActionGroupDemo.main(ActionGroupDemo.java:67)$ @4 B9 q: D U( G: F5 _* Z6 s
& d% _7 A' C* \) Q! m3 D2 C
) R2 i2 @# |% [; W4 M4 oimport swarm.objectbase.SwarmImpl;
1 X6 z0 H' r$ u O; H5 simport swarm.objectbase.Swarm;( P4 O" g" W; n4 d& @/ I8 ~
import swarm.activity.ScheduleImpl;
& ]) x" Y0 G# T" U5 C0 n: aimport swarm.activity.Activity;
8 u) r4 m& r7 q+ l; Uimport swarm.activity.ActionGroupImpl;0 d; [+ x0 m5 G" Z! F! u
import swarm.collections.ListImpl;
8 x6 A) J( R5 g6 C/ \. M0 `9 _* ?! timport swarm.defobj.Zone;
" z, i/ K, L0 g8 W7 a1 x9 }. _import swarm.Globals;
; ^9 }2 C k4 r/ F6 Q% r; R& Cimport swarm.Selector;
, Z9 B# N4 Z8 K% V, e. Jimport swarm.activity.ActionGroup; / K; { S3 F8 |
class Agent {6 K$ K* c# j' b. n3 c) U
char id;
1 `& p- W6 ?. q% n. b6 l- y$ f6 ] s6 h( s; @
Agent(char id) {( ^/ [2 F# \( Z% q+ W c
this.id = id;
" T5 a, y! O, K+ B$ l4 S }
# \' o3 F" A. Z# ~# h
1 z7 Y( w1 i! n" F$ R$ A public void agentStep() {
& y: ]7 z% N. ]' m# \ System.out.println(id + ":" + Globals.env.getCurrentTime());! P- w! a; s1 y+ R1 g- X7 Z
}" ?+ z5 t0 k* @2 r9 i* W/ i3 v6 H U/ S
}
6 n0 \( z* d" d* B$ o+ p& E* U. G2 c5 D
public class ActionGroupDemo extends SwarmImpl {1 P. k9 J& u% s I/ T
ScheduleImpl schedule;
: z- H; P0 C! W ActionGroupImpl actionGroup;9 J' m P$ v4 ]5 ]/ @: {, E
ListImpl list;
9 T; I+ S+ b- V# |7 K( m char Id = 'a';
) Z _, o# d6 h
5 [/ K$ d9 s M/ Q3 u9 t: g ActionGroupDemo(Zone aZone) {4 t; v3 _. U, I/ M$ s+ p
super(aZone);
7 G0 F) O1 a( s& [. o8 E/ A list = new ListImpl(aZone);
1 ~5 x3 n- K& I, W swarmSetp();
" U9 w: R4 m/ e; S7 |# Y1 N actionGroup = new ActionGroupImpl(aZone);
: _5 u7 Q2 O( W" l8 f9 f# u* _ schedule = new ScheduleImpl(aZone);
, j3 [) ]7 Q# k2 ?& A8 c/ Q try {
' }2 l. A. v8 ]1 X2 S0 Q# q Selector agentSel = new Selector(Agent.class, "agentStep", false);6 Y h: R2 j: ?8 x, X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 n& u* ]& X& u - _- Z# C) L7 p, g, [/ f# f/ p: ]
actionGroup.createActionForEach$message(list, agentSel);
- K+ l" l$ {0 F& Y: K actionGroup.createActionTo$message(this, swarmSel);
, S5 u& U5 { B' ^ K8 `% I0 u3 E schedule.at$createAction(0, actionGroup);
6 k6 z, S) b; y( }% y8 ?9 k schedule.at$createAction(1, actionGroup);$ I/ {2 ]: j3 V7 [- w
schedule.at$createAction(2, actionGroup);$ l+ b: o3 ]3 [) y
0 m: X7 i- B2 ?! _8 T
} catch (Exception e) {9 j5 e- s* B2 f- Q5 D6 [/ o1 X
e.printStackTrace(System.err);
6 k' T3 P' z7 b) H0 f9 `6 P+ X //System.out.println(e);& R/ y5 W% W* f* R$ W3 [& Y
System.exit(1);1 ~2 o% N# a4 j. _
}
6 O. C9 O3 q, T- E8 \( s6 j) W8 T/ t1 d$ u
% R, O! T( J! y- a" M# x0 p \
}& V: H' @% U5 D6 u% m j$ s% V
+ a' `) j% j6 U I
private void swarmSetp() {
( T0 ^1 @% O* J+ c/ G list.addLast(new Agent(Id));
/ }0 d. j1 p/ V" F+ Y Id++;+ {$ c: _* W! Q& Y0 S" n% z# m! z
}! g! A: I% W7 T, H
9 L0 d8 v7 P F
public Activity activateIn(Swarm context) {1 f9 Q, n. i8 e# F! u8 Y ~( L# {
super.activateIn(context);
* a7 J1 q8 F4 X$ b6 } schedule.activateIn(this);
2 F7 {# j0 C1 p$ b4 h% Q return getActivity();3 k, b) h8 M" @6 Q7 ~# t! t
}5 h$ q. w2 W8 W9 c! n+ T( P
1 N# _. f2 K# d public static void main(String[] args) {0 U1 ~, g9 m. F4 Q5 Z1 z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 r) w. G5 h* a" u& v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& m& Z$ T" e. U1 w8 @, h swarms.buildObjects();. g( F3 _7 d$ Q2 e7 B$ Y7 O
swarms.buildActions();
5 T3 M7 {4 z! J/ x& x swarms.activateIn(null).run();
1 x5 S* e6 H0 |8 D }
, e# @( V( E D, }6 {1 C2 y9 D
) D3 C$ A5 S+ s: }" m+ |} |
|