|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. }" E6 @9 ~1 r+ Z& | l' h
" N( Y" r: {: q+ b6 ]2 ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! B2 j% o, [- g2 z5 o x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: s0 [9 i' U! H' r8 a" e
swarm.SignatureNotFoundException
& o5 R% s* ]# g1 W$ y at swarm.Selector.<init>(Selector.java:76)
9 X; E q: g. b5 t$ R# w( I Y; P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 B8 W4 s+ n: ^2 Z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ v( ^# x Q* I: a4 d7 q! A ?" G# }5 [ ]
/ h ~$ W6 D" n6 y2 [0 i$ m
import swarm.objectbase.SwarmImpl;
7 y( Y' G5 P. i9 _import swarm.objectbase.Swarm;
' J/ |4 a' d# C1 n; X4 fimport swarm.activity.ScheduleImpl;+ i+ q: x2 r! K0 V; O5 [4 X5 b
import swarm.activity.Activity;+ T: Y$ o1 b; `9 G, I, P; g
import swarm.activity.ActionGroupImpl;6 L6 ^5 l/ t& u6 C* R. e
import swarm.collections.ListImpl;
: r6 k" ]4 W# J$ Zimport swarm.defobj.Zone; % [" f4 b& G- e% n$ g v
import swarm.Globals;) P4 N* {1 x! g( e# G7 N% R
import swarm.Selector;$ g" E* ~8 H' ]0 Q6 s9 }
import swarm.activity.ActionGroup; 7 g3 }( ]$ m1 h. L3 l
class Agent {/ o, h% T- W: G
char id;3 a' ` ~) R2 v4 g" o
H2 j0 Y( w3 j8 m r+ l; M Agent(char id) {' r( C! X: c1 v; E/ W7 P6 T
this.id = id;/ O7 ]8 s+ K/ U6 Q3 C
}7 u, _* e" A; W6 h" ~3 w6 ~+ y
, p: ?0 Z; }& b1 P4 t( m
public void agentStep() {
A8 N- u* b4 @4 P+ I) Q/ v3 P System.out.println(id + ":" + Globals.env.getCurrentTime());
. m, U {0 v8 y3 [- f7 q }" a/ K K7 w4 J# T
}' d9 b/ r) w3 L0 B# U7 T: N
. j( r/ w: |4 V% Z( f
public class ActionGroupDemo extends SwarmImpl {
/ l3 ?2 C/ p# T: C5 d: s ScheduleImpl schedule;+ |3 T9 G7 K' Y: a$ a( \
ActionGroupImpl actionGroup;
7 d0 l+ }( O2 H ListImpl list;& x( l/ N. }1 y# |, |
char Id = 'a';
( l8 d3 y: x: ~9 k1 m8 Q7 M1 L" C' k5 c- h4 \, y+ ?8 d
ActionGroupDemo(Zone aZone) {% C5 w" m- i; Z" _) D* O$ T7 d
super(aZone);
7 f+ i4 O3 _ }& C* A' T6 \ list = new ListImpl(aZone);
7 c4 x2 B" y5 w6 `3 U swarmSetp();
1 P0 R- S: }! S% _+ {6 c actionGroup = new ActionGroupImpl(aZone);8 `6 w6 z2 V: T$ k) Q& h. r
schedule = new ScheduleImpl(aZone);
- D6 P0 K& H+ I try {
& c7 U, N2 C, @ Selector agentSel = new Selector(Agent.class, "agentStep", false);' R0 s# p0 n0 v; c4 Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 g+ O. B/ Q$ S7 |7 i9 ?* R) W* Y
. y" t8 e9 J7 J% T+ E actionGroup.createActionForEach$message(list, agentSel);, r0 |/ H% I2 M' v- A9 ]$ j
actionGroup.createActionTo$message(this, swarmSel);
6 _" a' l; O6 n+ m: c9 k& z schedule.at$createAction(0, actionGroup); o2 f3 P& E0 Y1 e* J" f
schedule.at$createAction(1, actionGroup);
7 G' P, l1 b. g l/ E schedule.at$createAction(2, actionGroup);
( ]1 [) J. N$ `& }3 G; u; |( `4 a- W' \/ k
} catch (Exception e) {
; V8 x$ h9 t2 L! m7 R" u% r2 R7 K e.printStackTrace(System.err);4 T; v0 o: V& j D: n3 t8 l7 ^
//System.out.println(e);/ O9 m) L D' B, p, [
System.exit(1);% M6 T% H8 S# ]
}
0 m% r+ l# q {2 t0 e* I2 G' ^! r. g$ g f
; S" a, C/ y9 ]. `! s# p; |. y }
4 A6 \& k& {! H/ F) N% F9 }# _9 W% P' e2 M5 m, x
private void swarmSetp() {
; g0 s. H# \: |9 Y list.addLast(new Agent(Id));& h1 b6 h# i$ d
Id++;
`+ x; ^; R0 S) F }
& Y- s* o! ]! @/ k0 q* b T
: F z4 U. v, V public Activity activateIn(Swarm context) {
3 z* z1 w' ]$ N# a: H super.activateIn(context);9 \2 O+ X0 M2 C3 V. m" D
schedule.activateIn(this);
+ N+ h4 z7 g& C6 {/ G2 t return getActivity();: p3 w- [0 S8 `- A% m8 N
}4 j. q) [6 G; M' x# L
& t$ y5 I' I* b) L: ]
public static void main(String[] args) {5 R7 B( ?! p5 j7 M: h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, F7 a* d5 M1 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; W1 r0 `+ r: j+ J$ Q/ [$ T3 o swarms.buildObjects();
% T: F! `6 z N6 g swarms.buildActions();
. e7 c* u+ k$ k k swarms.activateIn(null).run();
1 r/ w- g8 E5 e }
( U n8 G& u% q! P1 u$ W& M1 j0 w$ z
} |
|