|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / I* u" a d- j
: u+ m u( G5 \9 s: p& L' m+ h% t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 h' U5 T( G6 X# C4 V. z- P$ P, L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 W; m0 T. K( s5 L1 }6 pswarm.SignatureNotFoundException
, e3 y; n& O/ N. _3 U at swarm.Selector.<init>(Selector.java:76)& d5 y7 k4 J3 d. o: k% Y. ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- }6 z) Y; g2 O8 Q( j at ActionGroupDemo.main(ActionGroupDemo.java:67); {# Z, I; S: o6 Z, V
2 B, j* B: P& t! ?" l
+ w" |3 K: m! Q, L9 Q8 R) mimport swarm.objectbase.SwarmImpl;+ a5 L1 O. k9 d+ r5 V: D
import swarm.objectbase.Swarm;* m! o H# `" Q" A- t+ z+ I$ Q# ]
import swarm.activity.ScheduleImpl;- o' ~: e# Z: }
import swarm.activity.Activity;
4 K% R0 Q( `0 i+ rimport swarm.activity.ActionGroupImpl;+ I9 m- V* m8 k
import swarm.collections.ListImpl;
8 Z5 \" Q5 ]. X. ~import swarm.defobj.Zone; % F' U0 G" A; |9 f
import swarm.Globals;3 r! E _# z$ p7 Q1 `$ g. f* L
import swarm.Selector;4 k$ ?) A- E T$ o$ X
import swarm.activity.ActionGroup; - s7 E: T5 i6 o9 V2 ^8 u( D
class Agent {
0 ]8 U$ _3 p# l. ~ char id;+ o! `& j/ h1 Z& \1 V# M; ^0 r* X
& K4 m K$ `% y. I" k5 L Agent(char id) {: I" _- _& p! z
this.id = id;9 J0 T% P/ p6 e7 W- k) s8 ?
}
) n0 E* `9 d3 n; \+ o7 I4 U6 J- x: V% J- k1 ~
public void agentStep() {# s/ v% U) y; m5 ~, L
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 _9 O! C/ P' R( S3 p }
/ T* _, }( ^: d7 ]2 U}- I, O7 ]" ^( k5 y
1 h6 H j) P; E. H3 N7 J
public class ActionGroupDemo extends SwarmImpl {/ \& Q0 U2 `7 ~
ScheduleImpl schedule;
9 w- `9 C. t% f% l; L: F+ A- H+ ~8 o ActionGroupImpl actionGroup;
. E: m6 r0 ]5 ~ W3 _0 \" { ListImpl list;
" K( }) |* Y- R char Id = 'a';. ]3 }( {( S6 y
3 [: g7 u, F# A7 \6 X! \/ ~, U3 i; q E ActionGroupDemo(Zone aZone) {, A# c( s- T# J+ g$ I
super(aZone);
+ |) A3 P. M( r list = new ListImpl(aZone);
% {: I- v: M5 V3 {# g: t swarmSetp();6 w0 o8 _, r4 E, x* r5 A, ]/ `; q
actionGroup = new ActionGroupImpl(aZone);- x+ [% s' V5 w8 \1 m, ^( O% w6 b
schedule = new ScheduleImpl(aZone);
. `; m- A$ O. Y6 E8 }1 n try {
# K% q, ]1 j9 g6 ?# W Selector agentSel = new Selector(Agent.class, "agentStep", false);
( t* d+ w L' p B/ q+ z5 d V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 M5 M( t3 v7 S
7 P; T1 q$ [) Z- l3 O actionGroup.createActionForEach$message(list, agentSel);
8 L- w; k3 L6 Z) a% T' B actionGroup.createActionTo$message(this, swarmSel);- L3 g! Q7 {( l0 A+ I2 O
schedule.at$createAction(0, actionGroup);
+ D: J* A h# q' V schedule.at$createAction(1, actionGroup);
. U( l! D, W) L: E: t5 Y schedule.at$createAction(2, actionGroup);; R; h% }$ K: n
. I+ Y4 z) ]; @; O. \; Y8 [- a
} catch (Exception e) {0 a+ d" C6 w+ _$ V. n0 s
e.printStackTrace(System.err);& r0 o5 U: ]* H/ g* H0 \
//System.out.println(e);* J9 `: o9 h7 d; p$ F2 B$ }
System.exit(1);
3 C8 A# I7 h+ T% j# }6 E& w6 H }
: q* U3 {" W" s. B* A8 M1 ]4 v
2 `7 y. Y7 I& K3 F2 r5 |
}7 U j( c& n5 d; i1 s
# y7 q4 b/ p, j' @$ f4 o6 ` private void swarmSetp() {1 W$ K; W% x/ m) G' ^
list.addLast(new Agent(Id));- z. f% }- _; x% q4 F4 C
Id++;9 y! u6 f; k" |, t; G5 n
}8 @5 j5 g3 s, b+ _) t% n
7 I- t4 q, X$ W/ V3 k d+ m1 @ public Activity activateIn(Swarm context) {
/ s1 k4 U# ]9 h; g0 \ super.activateIn(context);
( T d! w# \( l2 V0 ] schedule.activateIn(this);
0 c5 O' f; M' D- ~+ x) _ return getActivity();
4 y( ?+ p, }( y3 F }4 [; g& C+ Y: W- y0 m
! v9 a* v2 O" V, i+ ]& a" L public static void main(String[] args) {
7 Z+ t0 [3 s/ f) @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ `. v+ {0 ]* y4 V4 S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) f! W8 ~+ M( S' p swarms.buildObjects();" {6 f% d3 l, g0 o; W
swarms.buildActions();
o0 R8 Z9 q9 `& ?0 w swarms.activateIn(null).run();" p( U6 e G0 M. a- h f* s! \1 P
}# t5 r( t* d, H( D
/ `0 k6 |: C. V( t$ ~} |
|