|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# ]* P3 W1 f0 w7 \! w: W
) M2 y- n2 I+ a3 G! Z* g. @% V/ {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. H. D6 ^9 [. c+ S! _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& v7 o& z: `2 @6 N. M2 k2 B+ S
swarm.SignatureNotFoundException$ g: C6 Q* Y" H3 P+ T) w
at swarm.Selector.<init>(Selector.java:76)# ^6 g) H2 a E9 G" U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
i0 |+ O) j# d at ActionGroupDemo.main(ActionGroupDemo.java:67)
" P2 F% p: X2 N& V; H7 n R# r4 F$ a% q
8 N, [( Z2 r; a9 q
import swarm.objectbase.SwarmImpl;) c! ?% C; U; |, k& G: m
import swarm.objectbase.Swarm;
3 @. }5 t" g6 D* E: Bimport swarm.activity.ScheduleImpl;
. x( P$ \, j n9 fimport swarm.activity.Activity;
" F! {2 w# p6 H6 I/ Y+ M6 cimport swarm.activity.ActionGroupImpl;
0 g" _5 h5 Y) w; Jimport swarm.collections.ListImpl;6 A. s) Z& F) Q1 s3 t6 X( @7 T/ Z0 G
import swarm.defobj.Zone;
: B2 _9 U% P/ h' _/ R' s: N4 himport swarm.Globals;
- w$ n& n1 A/ |' N# V- Uimport swarm.Selector;
+ \8 l1 l( g1 b7 t* [0 Aimport swarm.activity.ActionGroup; 6 d/ r% ^6 p; j
class Agent {
1 l- }& \5 s2 I3 I9 g8 V char id;# ~ C" }3 M# o2 ]0 U- _. u; w
4 \7 p& U4 ?* z$ G& N
Agent(char id) {" ]( E, \6 y5 W( \+ K. m
this.id = id;
8 p: p9 H5 ~* ?0 i) B4 @' a, d }0 Z- g( u$ w2 Z. D% _; M
1 [+ u6 |+ L0 V# D0 z: k! f public void agentStep() {
: ~9 N4 t/ n# B# r: j" W System.out.println(id + ":" + Globals.env.getCurrentTime());, t( S# d1 Z+ c
}0 E: v# y p1 c4 X" b7 y, c1 e; K
}
2 J2 ?$ B3 D) s; A8 k9 I) o8 I% j' h2 C& p
public class ActionGroupDemo extends SwarmImpl {& l3 f% o. U n% u
ScheduleImpl schedule;9 |* M" [5 t3 y% y, M9 ~6 G
ActionGroupImpl actionGroup;3 r* @2 ]0 B3 e; t) \4 ?5 P
ListImpl list;
( i$ @; ?1 d2 x/ P& P8 a char Id = 'a';/ T I" d) M% r
+ C- v* T. F. x. S$ z; T
ActionGroupDemo(Zone aZone) {
M/ Q3 |2 ]8 }7 n$ N% C# u super(aZone);1 `# I( d: A# ^. t/ e- B
list = new ListImpl(aZone);
8 Z+ e' r, |7 x! J; r9 h# U swarmSetp();
& S9 F% ^6 i2 V! `1 ~$ ]" ]! h actionGroup = new ActionGroupImpl(aZone);( x+ @7 W/ w$ n/ C/ o X. t0 W% m
schedule = new ScheduleImpl(aZone);
" G: c' j H u. b% x try {
- B, E5 x- U7 C4 g+ ] Selector agentSel = new Selector(Agent.class, "agentStep", false);" U+ v- M/ T7 U# a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, r; d% d$ u' b( I1 { 7 I# F' i* P5 |, c
actionGroup.createActionForEach$message(list, agentSel);
* M& Y/ I" V& B actionGroup.createActionTo$message(this, swarmSel);
: D' L8 X8 y( V! \ schedule.at$createAction(0, actionGroup);
" T9 _/ R: K" J P2 X schedule.at$createAction(1, actionGroup);9 y+ p( t A: Q0 |( @# E
schedule.at$createAction(2, actionGroup);8 B6 ^9 K( e2 `9 G/ h3 U( {; `
3 s3 L9 t. Q. z2 Y, s
} catch (Exception e) {( G# ` o$ G% c# c/ O8 s) K6 o
e.printStackTrace(System.err);2 l4 h- L* T. b9 A' n
//System.out.println(e);
; G3 ^' @: F! Z2 V9 G z; B$ `* T System.exit(1);3 p% t6 {+ W- Z5 ]; n- v, c0 B' |9 O6 R
}
# b' R9 K [2 f+ t& n S8 M
0 ~% u4 W6 n: t8 Z& q" E0 \0 i9 u/ y# c! X( K& M
}0 K3 @1 n5 B/ ~
# f0 `" @# ]* ^
private void swarmSetp() {3 Q; w5 O7 D }* `7 K& b. b
list.addLast(new Agent(Id));
. t! h( K: w5 G6 y' g# x Id++;
9 d6 u* Z/ |# W* C }
I) X1 ?0 F |) V" E$ x* l1 _/ E7 b% h7 ^+ t( T0 K& X2 S) {
public Activity activateIn(Swarm context) {. `5 O, C& f5 c7 X7 i2 w# O ]
super.activateIn(context);
a% M- `# X, C+ q$ k7 C schedule.activateIn(this);
9 P- m2 z C6 _2 S N return getActivity();
@( k, }% F" J }, T: p; a& X4 V# M0 {7 H
+ }: B9 p0 B8 m' M% U
public static void main(String[] args) {7 k- P8 w5 v6 g0 B7 |$ h) C4 L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 g) r: K5 H% t4 i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 a3 l5 p$ [; Y swarms.buildObjects();+ H6 [! d+ s+ h! Z* y
swarms.buildActions();
* x' V/ \/ d' O: A2 r! ]0 Y3 a swarms.activateIn(null).run();
5 r( b/ j5 e7 C% G u0 i- ^ }
0 {1 h7 ~; P5 c* s# v; E$ s' `. I7 B1 S+ ^$ h0 ^6 r
} |
|