|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 j2 Q9 V$ H* ?! k
% s g) E. x \3 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& O& D7 Y8 l! D- }9 G+ e$ o# R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: W/ _- h0 V( L) X, j9 g4 v& v; fswarm.SignatureNotFoundException9 }; U/ m- m l0 `" A
at swarm.Selector.<init>(Selector.java:76)
; _* H0 K4 G! G( d; j at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ h% F9 @4 y! H; ]* E9 u1 c$ | at ActionGroupDemo.main(ActionGroupDemo.java:67)* i; |% I0 N. b7 a( f0 w+ Z
) a: C R8 @, t4 Z* ?) {- t+ K
. Z a6 d, B; Q! i l7 nimport swarm.objectbase.SwarmImpl;
0 o6 Y( q- ^( Q& vimport swarm.objectbase.Swarm;
/ n% y- K: M: a- bimport swarm.activity.ScheduleImpl;
- f9 \: C+ K4 Eimport swarm.activity.Activity;
, B# z6 m! n& L& v( Mimport swarm.activity.ActionGroupImpl;7 a4 O8 M/ g0 s6 I
import swarm.collections.ListImpl;
! R' w. v# {% V# Kimport swarm.defobj.Zone;
0 P6 r( o* D4 {& ~! |5 ^5 d0 Jimport swarm.Globals; m4 u( V' B7 U- l
import swarm.Selector;* E) }0 q- D7 v3 m. s) t |
import swarm.activity.ActionGroup;
Q- g7 V/ y7 d% R8 {class Agent {
6 \- e/ m6 N# w4 z char id;2 N7 M/ n3 v" {+ E* `
! a. M# E4 ~1 m9 W8 |: v" R2 i! K& a
Agent(char id) {9 f* a" S( a" ^' `/ d! K2 X
this.id = id;
+ P7 t0 H! x8 } m }4 N. ~+ `* p1 Z2 _
: I; ?2 n# G" |; q: Y K
public void agentStep() {
. d. G; p' O$ p& @- D* h) ]3 k" z System.out.println(id + ":" + Globals.env.getCurrentTime());
2 f" G1 G& O, R: w }' e2 ^1 D! N! t
}
0 V, f' u) H# N- a1 f0 D( ^8 k+ O1 d, F. v+ B
public class ActionGroupDemo extends SwarmImpl {" n7 o2 q/ z# y
ScheduleImpl schedule;$ x: l& J2 {( ^1 ~$ I3 r
ActionGroupImpl actionGroup;
* q W' N% e" [2 p3 @ ListImpl list;
$ N5 P1 k; O3 E4 _& _6 G3 Z char Id = 'a';% |, S4 i" [7 q; q+ d6 i% |9 w' w" ]! S
8 {9 I; s$ f6 R7 n# |" M& j! f
ActionGroupDemo(Zone aZone) {: A/ p8 q( o$ J# n
super(aZone);3 [2 N' T+ o q0 `% {3 q! V
list = new ListImpl(aZone);
4 L9 `2 X+ W) R swarmSetp();
3 s) o0 ?) @% j1 F1 d3 h actionGroup = new ActionGroupImpl(aZone);
; {, ^. D" N6 }: T" U/ ]" v% P schedule = new ScheduleImpl(aZone);
1 X' N( J- x7 v3 P& b& Q; S try {
+ W) [3 L0 s9 W. ^) } Selector agentSel = new Selector(Agent.class, "agentStep", false);) B- K" D, D, _7 ~8 o K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# k T1 B& J3 @0 \9 S) d 1 ]5 k5 V t( X. ^% T
actionGroup.createActionForEach$message(list, agentSel);
# U1 x5 a, |' f: U actionGroup.createActionTo$message(this, swarmSel);
( \' a& c1 R' \; R" I- X8 T schedule.at$createAction(0, actionGroup);) h! E# g2 _1 G& h+ w, y
schedule.at$createAction(1, actionGroup);4 D7 F6 O8 Z% C4 U* F" |9 V
schedule.at$createAction(2, actionGroup);) O% { @# w8 M! x3 c
4 d& K$ |. t" q7 z3 _
} catch (Exception e) {
0 ?. i7 y: P8 Z3 D; R! q' [ e.printStackTrace(System.err);' E9 P/ N) K6 _% b) X& s, m' ~. I
//System.out.println(e);/ a! m7 X; d2 u3 j+ N/ \ Q
System.exit(1);" K' w j! U: \8 j5 f+ o
}
* W2 w: S7 O. A! B* h
6 c9 J" X5 E# K, M+ f& _! z& ]4 z# F
: l0 s8 B2 K9 m& ?+ U }
/ V# w0 Q0 C; F% K& B1 y$ e' D
/ g" X+ ~7 U' p; O2 ~ private void swarmSetp() {$ I& u# j s+ F* D2 i/ C+ I
list.addLast(new Agent(Id));
- c6 @" }% i! j. r% f Id++;) D7 ?0 d- Q# k. G$ I9 a' h* q
}0 A$ G5 @- ~1 Y& d- Z: U
1 M7 u8 d5 u% C. R2 s( B6 Y9 r; H
public Activity activateIn(Swarm context) {
: V# j4 m4 U8 _! \) B& h super.activateIn(context);3 {; z. M3 z' A8 h+ \1 Z$ e
schedule.activateIn(this);
, Y+ H9 g1 v2 O% s) e8 N) c return getActivity();
6 L- v* J2 }7 v, m7 f }. `9 h' A0 k( k7 T8 H
) l' l6 f8 o$ X5 E* B( ^
public static void main(String[] args) {
' {& ?" L: F* g% h: J# ~ ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); H! @ v1 h6 Y2 l0 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, u+ T0 Y; }3 y/ d5 H/ w7 T swarms.buildObjects();/ d: B B3 H# ?5 g8 D
swarms.buildActions();. s9 F4 D! C5 W8 T N" v! z& L
swarms.activateIn(null).run();
; x& H+ h$ T& b+ r% C1 g } V5 E/ n8 y! B0 ]0 P8 a; v* @
2 `+ W' O- m" E} |
|