|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! E! A* t6 x0 Q; z
9 k3 o4 f! u0 w* Z/ S( u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& H9 e& ]! W# M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 p4 C) H L Q2 \3 i7 e
swarm.SignatureNotFoundException. [8 g9 _* l1 _9 g4 ^9 J
at swarm.Selector.<init>(Selector.java:76)
7 e+ h. k: Q( Q7 j. j5 j& | at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Y0 ?6 }1 ?% r( g% @% T% Z* T
at ActionGroupDemo.main(ActionGroupDemo.java:67): h2 f) _8 j3 ~( W/ T
7 [5 q$ l4 p2 f! { ]. j8 A
& V! ^- W7 n% Fimport swarm.objectbase.SwarmImpl;. P9 j4 e/ A2 q9 C6 m9 S. k/ n
import swarm.objectbase.Swarm;
7 F& m5 ~ b% ~# |. }& R" mimport swarm.activity.ScheduleImpl;6 [6 y' F- S; c8 C: j' W$ G( n
import swarm.activity.Activity;: ?. t5 ~* o! D
import swarm.activity.ActionGroupImpl;
* i, C% O9 U0 { g1 D1 Mimport swarm.collections.ListImpl;
. r4 V+ ]' g5 U5 b1 D+ n5 l1 Cimport swarm.defobj.Zone;
8 ]* y5 u+ |: A$ ]import swarm.Globals;' ^5 t* x5 Z# b/ w# D1 i* S
import swarm.Selector;
8 a5 p/ P9 e& R6 Wimport swarm.activity.ActionGroup;
* K- @" z# W, E2 { q" X2 s* N# P5 mclass Agent {; I g: i4 m1 |4 s
char id;1 g! Z \3 `- B6 F1 D6 g- U1 R4 h. K
! { J2 j& E4 Z; f Agent(char id) {% a4 X1 c# x3 f0 r/ H# `; ]
this.id = id;0 W% s+ j* r$ o
}
2 p8 Z" j/ L; J& u. M
" U) ]2 m& E9 K/ L# t% M$ p public void agentStep() {
) n: r) D5 ]$ q1 c4 s( } System.out.println(id + ":" + Globals.env.getCurrentTime());
% k+ ~9 E5 l$ _% ]2 _ }* d2 L5 W8 C# ?/ |1 @: R0 p
}
8 J0 R+ }9 d+ W3 u5 R( b' C% y* O6 K& R% M
public class ActionGroupDemo extends SwarmImpl {6 X ]' A/ i |3 K% l3 k
ScheduleImpl schedule;
' m Y$ L2 M' }% s7 Y ActionGroupImpl actionGroup;0 k4 S5 t% c4 W1 z- L8 x, {
ListImpl list;
9 L0 v) z v: o6 Y char Id = 'a';
. d1 N. I! O$ ]# |1 k
2 j2 B* p5 y+ L& T* ^4 z ActionGroupDemo(Zone aZone) {. _# b3 r) b. t1 k/ `
super(aZone);7 O( ~9 L% e$ W& @! ~
list = new ListImpl(aZone);- j+ e+ S! J: G" \
swarmSetp();: F' T: c% ^& o j4 w1 u
actionGroup = new ActionGroupImpl(aZone);
4 o2 P( B5 N+ k- y2 @ schedule = new ScheduleImpl(aZone);& Y1 T: @5 Z, R7 H
try {8 v6 t0 G! J* m
Selector agentSel = new Selector(Agent.class, "agentStep", false); ?! G% S- N4 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! C$ w {" Z0 _! M n! n( E0 l
6 {7 J9 {. Z/ F+ E" [$ P6 O
actionGroup.createActionForEach$message(list, agentSel);0 y7 P x" e" A$ ]) P
actionGroup.createActionTo$message(this, swarmSel);
6 h! Q* g/ y* j* b( Y; a schedule.at$createAction(0, actionGroup);
% O; D0 f# Z5 Z( t schedule.at$createAction(1, actionGroup);
+ k% F$ P+ [, f* a& | schedule.at$createAction(2, actionGroup);
. E8 z( ^3 i+ n
% D7 d( c a/ c } catch (Exception e) {2 p- v8 y7 ?0 q9 k& Z4 k
e.printStackTrace(System.err);" |4 A" @ z# R: Y J
//System.out.println(e);
3 D, G4 F0 r/ C( P# W/ \ System.exit(1);* U6 P7 ~4 a* E
}
. F Z+ V6 V2 R! s4 [
" X) H1 U% ]) a+ a8 `7 p% d
0 q; d" b. e/ O. o9 H }6 A7 d+ r& T4 t8 u. o
4 C) Q6 s) {1 }4 W. ^6 r0 T- |& l
private void swarmSetp() {
7 S4 u( H0 m! ^6 i4 j* _ list.addLast(new Agent(Id));8 G: h6 y7 O- Q4 ^" p- z& S
Id++;
. f) ^, K6 q- t' f+ z }
# {* `% z1 I! x' F
% p: F, P; i$ g# w" y public Activity activateIn(Swarm context) {7 s# `% O; d7 ?7 j# i
super.activateIn(context);8 o# v: |3 \: Z9 |$ S) ?& r1 M
schedule.activateIn(this);
: d0 x( _5 X9 \3 I return getActivity();
8 u8 F5 d- H/ @! K* W `4 r \ }
3 x t5 v3 G/ Z9 j2 S% s- V0 F8 c+ T
public static void main(String[] args) {1 E- a1 _6 A# h" s/ F2 F# ~0 K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 r: W1 b/ h) p+ W& n9 g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 [7 x" L. r9 a. @
swarms.buildObjects();. K0 X0 q! W! b6 z0 [ ?
swarms.buildActions();& @- p! [: T) @3 I8 t) g
swarms.activateIn(null).run();/ h4 l. n" x* {4 Y0 f: |
}" c( i. ?/ N9 F q5 |5 K
1 ]7 o3 R4 @9 ^9 k; t0 R4 `
} |
|