|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; z. A1 O4 V3 w
3 X' e+ Z$ \; o: H6 C4 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 \6 {1 ]& A7 e3 K+ A" p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' I5 Q& V6 h/ y1 G$ ~7 |
swarm.SignatureNotFoundException. W( I. |' B. w m1 [3 u1 Y
at swarm.Selector.<init>(Selector.java:76)1 K# p5 {/ j: s2 D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), E! ~7 o1 B- I6 s3 E
at ActionGroupDemo.main(ActionGroupDemo.java:67)' n( ^' [! u. d7 q5 G. y! x0 m
4 O0 o5 M1 m1 C/ T# [. l; k4 Y# ?
, k( H/ o4 Q O. d" T: }import swarm.objectbase.SwarmImpl; H! M* `4 g/ O* h H" x- ]
import swarm.objectbase.Swarm; v+ `* |) s& T
import swarm.activity.ScheduleImpl;, S3 o3 g2 D! m0 Z7 u( I
import swarm.activity.Activity;
. q( W4 b8 Z! R" simport swarm.activity.ActionGroupImpl;/ s, i" }7 i% ]" d2 _) q+ Z& Y
import swarm.collections.ListImpl;. o3 D; A8 |6 U
import swarm.defobj.Zone;
( F0 i0 M5 H( c3 Timport swarm.Globals;9 r% d1 s9 I9 P3 C- W+ E3 n
import swarm.Selector;
3 ~6 b% t7 v( simport swarm.activity.ActionGroup; % n6 S1 o7 k6 n0 e# Z' o
class Agent {
# y' Y! f6 G- G4 D# ]. R char id;6 i. C+ Z8 Y2 Q* _! V
- V4 L1 C2 s6 P; e5 C Agent(char id) {
+ u0 H& E0 {' M2 |4 v' k this.id = id;9 R2 C& G% c: z _, l) W8 Q
}; O) |5 T* M( o% `
3 m' L2 k- `+ [1 P8 p
public void agentStep() {
$ ~9 F" m1 D m7 q System.out.println(id + ":" + Globals.env.getCurrentTime());
, X$ D5 n& A' @- k- y$ ~ }3 k" W# w2 k( k
}* B3 B* b8 a7 z
, ?+ a" j- {! _/ a
public class ActionGroupDemo extends SwarmImpl {. Y% A6 o% [ v% k# V1 b
ScheduleImpl schedule;# S/ y( g z8 f* y
ActionGroupImpl actionGroup;8 R& ~$ z* l/ A' [, X
ListImpl list;2 A# X! h5 E: B: l C1 w
char Id = 'a';
9 j! C5 |: g" v$ q' a. t
: E5 F: F- `4 M8 e/ d% V ActionGroupDemo(Zone aZone) {; o2 L, M2 u5 N0 Z4 a. s
super(aZone);
J8 Q1 ], X+ h list = new ListImpl(aZone);
, l/ T- N6 ^: _! ]; E- @ swarmSetp();
. D$ o3 ~+ S. v" V actionGroup = new ActionGroupImpl(aZone);- o; f5 |- j/ I0 h' z6 S
schedule = new ScheduleImpl(aZone);. S" L: y" T% B, E/ y8 U
try {( t% m6 s& I2 [& h# Y
Selector agentSel = new Selector(Agent.class, "agentStep", false); M0 s1 h. J+ ^. x
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' H9 S) E% z# J8 `4 a8 ~$ [
' D+ t& J0 P* y7 v4 [/ i actionGroup.createActionForEach$message(list, agentSel);
/ `; }6 c7 `& n actionGroup.createActionTo$message(this, swarmSel);! Z4 ~& W% Q' H2 I5 e
schedule.at$createAction(0, actionGroup);
1 g Z& s$ t& R0 o6 L8 {: g schedule.at$createAction(1, actionGroup);6 d5 i u; I) O2 A, ]3 n
schedule.at$createAction(2, actionGroup);
2 u& k, v0 k3 h$ q9 n, w- \0 F7 Y& d
} catch (Exception e) {% {- o- z5 m S
e.printStackTrace(System.err);3 N0 |) h$ y" i9 ?* J) W
//System.out.println(e);
3 w+ [% T6 \" H4 [* F System.exit(1);% W+ M% @( Y( a7 F( L0 z" i% P
}
. A! K+ n& c* L b; o0 v! z2 l9 s: S* m# f" ^& s ?1 W Y/ o
5 y+ g2 m; B9 C6 B8 o2 M" }) }
}6 x5 h, l$ q5 R& q( o
/ w7 @' B9 R s
private void swarmSetp() {0 q( ~& m% e# A+ I* r" T/ Z
list.addLast(new Agent(Id));
+ ~! L: _# U5 W. C Id++;
7 U' w2 k& p; E6 \ }9 n1 f7 [8 [+ b8 w# ?& P# h( N
% B/ H6 _; G5 E/ \! G public Activity activateIn(Swarm context) {
2 o R) E! I' A- k# q super.activateIn(context);! r) k9 k v; ]/ A( {* ?8 P# R
schedule.activateIn(this);
* e8 w/ l6 i5 G* U return getActivity();( G! n! }, R5 V2 f, u& U" V
}9 S6 L6 r. i. ]! r( t
8 m r4 Y+ l! c8 Q
public static void main(String[] args) { q L% \' z/ y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. X' f$ Q. F$ A% a7 f) ^& `7 _! s
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# u# {& h/ E+ Q' Y- I swarms.buildObjects();
: b x0 H; B( X ?5 e5 O3 d swarms.buildActions();
/ x, v; w; B. t swarms.activateIn(null).run();2 |5 q: O3 L/ [$ R
}
) w* a7 s, v5 Z4 _3 W( I M: Y9 ~0 y- s, N! E0 i
} |
|