|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * G* M3 B0 f, E
" N* `) V1 U! j$ r* l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 r) T; H. t: @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." r9 A; U0 n* f$ `; F* [! S
swarm.SignatureNotFoundException
/ L5 ~( K$ j8 e. t9 f at swarm.Selector.<init>(Selector.java:76)
! U" g) x4 R' Q N# h9 R at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 c3 f" e3 t! G; g* ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)" f6 h/ f6 q" e0 Q; U8 N% k( Z
7 g0 ~# Y- i1 f2 \2 ^2 {: o: Y' l% }+ h# p( b6 S" ^& i' w
import swarm.objectbase.SwarmImpl;, Z, N/ C w) N# T7 _ Q& g2 B3 M1 b- ]
import swarm.objectbase.Swarm;
+ F6 q; r' p; ?# T* A& Rimport swarm.activity.ScheduleImpl;9 s+ }" R+ K3 V* m
import swarm.activity.Activity; `* N" T) _" g
import swarm.activity.ActionGroupImpl;
8 ^. a+ u2 }: V6 @4 _/ F2 P3 aimport swarm.collections.ListImpl;
8 j3 @6 o+ G7 limport swarm.defobj.Zone; " g a/ U B$ y. u; x2 x
import swarm.Globals;0 n8 v/ m& x; i5 D/ N0 _% O& B% W. l
import swarm.Selector;
7 ~; g& x# c: t2 W. l% N% wimport swarm.activity.ActionGroup; ' n1 P, Q" W0 I3 R
class Agent {
" o4 ~: [; l5 k char id;
" p1 k% e' W5 T: ~2 v% m
) F" ~$ ?; @5 `4 ?* O& y Agent(char id) {7 u5 |0 ?" [* V, S7 [7 d
this.id = id;
0 o4 k+ X. r9 p$ P }/ x& i% [ w0 W5 ^7 Q. R# Z
( ?* `: u$ U7 A2 t# `+ u x public void agentStep() {) @+ Y) ?6 U& H& N
System.out.println(id + ":" + Globals.env.getCurrentTime());1 X. F8 _" ^7 J/ o
}
- g2 w; Z6 L1 g$ l- r5 H" w0 A/ I}# q8 M& H) r+ y T/ C
5 n$ J" A" V0 l, W! c
public class ActionGroupDemo extends SwarmImpl {1 C5 d5 u y' _9 d$ u
ScheduleImpl schedule;/ `+ |1 w7 X5 O+ j7 H
ActionGroupImpl actionGroup;
& w. k% y: v+ S& U# H V r ListImpl list;
0 H+ _0 H# K5 g2 t4 A& y2 B char Id = 'a';: B5 a9 u2 _& Q _% a+ b
3 d/ P M% a. P2 c/ {
ActionGroupDemo(Zone aZone) {6 g0 e) A/ F, I$ h
super(aZone);& W2 o1 s" s, {# F
list = new ListImpl(aZone);
" G" r' ?1 V/ | swarmSetp();, e9 Q2 d( p% u5 O" m
actionGroup = new ActionGroupImpl(aZone);5 c8 @: P, H7 \/ i
schedule = new ScheduleImpl(aZone);+ r* N' M& M2 H
try {
0 N& F( J; ~& O* f6 i0 {8 \ Selector agentSel = new Selector(Agent.class, "agentStep", false);1 q: j. L2 y& E" J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ s' l- ^/ x3 z- s; x3 D
; t+ y5 W" I% F+ ]# Y" u$ j6 S actionGroup.createActionForEach$message(list, agentSel);
! ]* e' r8 N2 T* S actionGroup.createActionTo$message(this, swarmSel);0 a( A/ C, m) F% q
schedule.at$createAction(0, actionGroup);
, Q9 Y1 _6 E/ M2 q1 r7 k2 P schedule.at$createAction(1, actionGroup);% C4 e* {! ]+ |$ @+ p$ [! @
schedule.at$createAction(2, actionGroup);
0 |1 N, {% u( a* i( Q2 G# w# S5 p$ l6 L* }3 f" ~
} catch (Exception e) {
+ B9 N; r2 S- W$ [$ l. Z e.printStackTrace(System.err);! z6 b) A% @, E: |$ g) n
//System.out.println(e); s; [3 W9 [4 x M% p$ v6 z
System.exit(1);+ n) j7 y8 z4 q; x
}
" p7 w" e% a1 ?6 x% s" @/ ~; U3 t' A# F+ w, ^: V
" e) l# K4 X" j }9 b% G7 f# S: |
) ~3 w0 i! G, \' G5 q. n
private void swarmSetp() {. t# [% Y7 l) B1 D+ b% b; y
list.addLast(new Agent(Id)); o k* k2 M# J
Id++;& M. | H1 q4 a4 z7 b
}. |3 q( T5 e: ^# B' A2 [/ n5 u
( j% e- Y6 Q9 S1 s; ?' b* U public Activity activateIn(Swarm context) {
F2 O3 H( t. g/ w b$ B super.activateIn(context);. W; V( M) | ?) j
schedule.activateIn(this);! F! H) ]* C6 Y# f. u
return getActivity();- F6 Z- j2 N- ]2 ?" K. l
}
q& w2 w: o \8 |2 G3 a+ h" r3 R5 y6 E1 \. k8 D5 U, H; _) R
public static void main(String[] args) {: g- f& K! [- @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( X/ w) X" V" R6 Z7 {9 q! w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ Y9 t2 s: t' Y; @+ g7 `5 m" l5 l
swarms.buildObjects();: c3 _0 E7 \6 L8 I% p8 i
swarms.buildActions();
. f: c/ i2 N# h) d# y+ {+ E: J1 i" J* u swarms.activateIn(null).run();
4 O+ w1 J; w0 @. O }
w2 K9 U, i% p! H
. K8 C( h% }8 y" V; R. F& J4 n} |
|