|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! O# p" [" Z0 O! e5 x
, }8 D: [3 s3 O9 n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 T: F( \8 |+ R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* k* z( ^# C8 p/ @
swarm.SignatureNotFoundException4 X! w( B; m( s" { T' }, x
at swarm.Selector.<init>(Selector.java:76)5 u/ L; A( m& u; x9 u; p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 w+ \! j/ U2 O) G- ~3 l at ActionGroupDemo.main(ActionGroupDemo.java:67)8 x( N& `7 y6 w3 j1 Z5 [, @' S
6 n& {2 x R" `; ~, x( F N2 U
+ u* C- \& v q% ], `8 Mimport swarm.objectbase.SwarmImpl;, \; r& D2 p5 K {3 z9 v5 n z
import swarm.objectbase.Swarm;
8 k( v* Q0 u' A# Timport swarm.activity.ScheduleImpl;' ~* h4 g, S8 b) d! D
import swarm.activity.Activity;! o# z$ [+ Q4 l" w2 ]+ I3 {
import swarm.activity.ActionGroupImpl;
X$ q4 }! _/ I* ]import swarm.collections.ListImpl;. k: X1 c w' v
import swarm.defobj.Zone; 2 v1 z1 W5 b( M3 o4 u; K; U
import swarm.Globals;
( w* W4 m. U: v% t1 ^import swarm.Selector;( e6 }! e* X. M+ O& e; j8 g
import swarm.activity.ActionGroup; 6 g5 V& b4 k1 i# K
class Agent {, }7 N/ ]8 @5 S
char id;
?* {8 v5 d% O; |. o+ p) v2 p
Agent(char id) {, v7 P4 J, L+ b2 S" g* j
this.id = id;( M7 R( C- ? ~2 w- ?* f
}; o- z5 M' X/ p
7 m# N/ z' l1 d/ x: N4 M% t/ J
public void agentStep() {2 B7 b' l% L- V. q
System.out.println(id + ":" + Globals.env.getCurrentTime());( [1 F8 I; t) q4 {, u
}' Y6 \. F- n- l+ }
}8 c1 D! A- k& Q2 o4 @9 ~& {3 T+ F t
. u" \. K& w* |public class ActionGroupDemo extends SwarmImpl {
; D- e+ b& y# P# c ScheduleImpl schedule;/ @* {7 @" ?8 ~, |
ActionGroupImpl actionGroup;
# C! L# q5 O! Y+ Z. U5 R ListImpl list;+ D9 m( @" d$ `& V, H( K$ I
char Id = 'a';
/ j; x. R' A6 q) H* @0 p6 M5 @
* C2 c7 T6 a5 I' j: J3 { ActionGroupDemo(Zone aZone) {: [: O* \9 O# L% I2 {1 \% c5 C
super(aZone);6 H3 Q5 i: M! U' n# W
list = new ListImpl(aZone);
* ^! N4 P3 \8 v% Z swarmSetp();- O* O4 A9 f+ z2 H' c
actionGroup = new ActionGroupImpl(aZone);
4 k$ s: P0 F* j. t# ]2 r2 ~ schedule = new ScheduleImpl(aZone);
2 E U5 S- i# H( I+ X try {
. D$ y! l/ S" }% n Selector agentSel = new Selector(Agent.class, "agentStep", false);: z6 t" _9 S! }" b6 d2 C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 J" l) S: }7 a" h( B6 S
( D/ C+ L% f( \2 g* D
actionGroup.createActionForEach$message(list, agentSel);( @+ r. d! U9 w1 T# }
actionGroup.createActionTo$message(this, swarmSel);
: ^0 {& A; K: C( H schedule.at$createAction(0, actionGroup);
4 X" ?# f& j% m" E* V1 |4 h* G schedule.at$createAction(1, actionGroup);4 I1 x* j- q8 J4 U/ u+ J
schedule.at$createAction(2, actionGroup);
& M! I! D$ O% x6 g1 A) X: G- g9 l) d
} catch (Exception e) {% W- k' u; r9 w; s4 X
e.printStackTrace(System.err);
2 q. x% @6 R" g, Z8 p; j! j2 \ //System.out.println(e);& X3 t# H8 D" K! `, t" a4 y7 G
System.exit(1);
J7 [. f$ b, d; D" {3 h }
) J7 w3 {; A8 F) I$ I( L% w
, w3 J( Q4 g. ]* y7 T* Z2 I
9 m+ Z) B* F" g }8 Z8 C1 Z ~) z
7 y- J/ p/ J- ]/ S" n private void swarmSetp() {
# o9 x% ~! z4 V9 o, T list.addLast(new Agent(Id));
- m4 k v( ?; \" }9 w" v Id++;
4 F0 k8 |4 e& v( F }0 y; f; o6 Y% F8 ^6 j$ j' V3 I
& z. C+ N4 X Z
public Activity activateIn(Swarm context) {
2 b$ o" z' H5 i% n" X super.activateIn(context);
' A! T4 e k! Y& E schedule.activateIn(this);
; n# ?' c) v. b$ V/ Z/ u1 v return getActivity();
+ c9 H0 j- K9 W. O% C! D }
- Q* W4 c5 Q/ l6 I* V1 e
) W, l3 Y' b8 F+ g, b public static void main(String[] args) {
- }2 q6 Y7 K3 D$ _/ k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 [0 y0 I$ r- \! t3 O6 L' _, R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ F' }3 R$ V A: k3 W, [% q2 g
swarms.buildObjects();0 R/ `& q( n& K6 n& S% \, A2 x* _
swarms.buildActions();% ^- s3 m/ w j5 M4 U7 a
swarms.activateIn(null).run();
T2 v& H, Z% H }0 c3 D$ n# x' ]
+ Y9 f0 G! f6 U; V$ h
} |
|