|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# F" r/ v0 O, |$ T) d* M7 E/ Y8 P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* e) ? M4 s/ b2 ]% }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. `, F% f5 M# n. a
swarm.SignatureNotFoundException
, o; M4 N4 d4 u: I6 Y9 \; H at swarm.Selector.<init>(Selector.java:76)
9 c3 k" ~0 F7 r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ C& K# u. b' d; g( Z, e# n/ ?, f at ActionGroupDemo.main(ActionGroupDemo.java:67)
) y5 b. N2 k0 o% M6 X& L+ H" z: ~& n8 z2 m) h7 z
) U0 }) t2 f7 f) Y. @import swarm.objectbase.SwarmImpl;8 [( Z" o5 |; K
import swarm.objectbase.Swarm;' C# g) h5 X! W) D4 V
import swarm.activity.ScheduleImpl;
7 \. k5 |% S# v9 c3 eimport swarm.activity.Activity;
4 ?' W8 r% T/ C# n1 l* s9 _! kimport swarm.activity.ActionGroupImpl;
& }2 H, Y% u. B/ ^import swarm.collections.ListImpl;
+ e$ D4 @/ w( j, N0 v% Z* \/ eimport swarm.defobj.Zone; 4 T6 B0 S- x3 O6 b- H" C
import swarm.Globals;% }8 Z1 z1 U3 t, I( f
import swarm.Selector;
* |5 |. K7 V7 v) Q" h# g: Uimport swarm.activity.ActionGroup; 8 w) i( n# e- L3 i: \ B
class Agent {
" |9 ~0 Q% s8 |: c; J char id;
; U& i' K7 B& K f# P# C, v/ e
6 r7 G/ s& e' e* Y Agent(char id) {6 s0 P8 ~7 {, f& z
this.id = id;
5 W. I! P( m0 w$ [0 T3 ?( K" \ }- o d, b' l! |; @; [7 @7 h/ J# M
4 ^7 c+ @; x$ f4 u8 e: w; S
public void agentStep() {8 t+ j/ b3 X8 z; F
System.out.println(id + ":" + Globals.env.getCurrentTime());
# g+ A8 {/ R7 W }
; p( S/ `9 }6 i5 D) n}
5 @2 `8 Z" ?4 I4 I
, I# E5 ?- `4 U" Ipublic class ActionGroupDemo extends SwarmImpl {% p! t* A- z C( h
ScheduleImpl schedule;
, T! C' _$ b: I1 p9 ~- [ ActionGroupImpl actionGroup;
: i$ E7 c7 }3 `0 W5 }$ W ListImpl list;
- D! X( ]9 B5 H/ G char Id = 'a';
1 W! a! ?6 `( k' q: n# }
W+ I& m& x# X0 o ActionGroupDemo(Zone aZone) {
6 k' e# ^" C% I2 K V; x+ B super(aZone);
$ `: |! Q+ T6 S# c4 N list = new ListImpl(aZone);; R8 L6 w. { s d/ X# s- ^+ Z0 _
swarmSetp();- I3 `4 I b3 H2 V( i0 O& b- ~8 j" q% G+ w
actionGroup = new ActionGroupImpl(aZone);
7 J0 U/ c/ q; g5 A# X schedule = new ScheduleImpl(aZone);
( @( n5 \0 c: D P- n/ u( x4 h7 t try {
& [3 V& J% a2 B5 C& s Selector agentSel = new Selector(Agent.class, "agentStep", false);5 _$ N" K! v3 k9 u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 }+ _( {9 C- J" h
3 ~/ v, N' ?5 _+ c! o; j* [
actionGroup.createActionForEach$message(list, agentSel);# }$ ~9 J0 U) A, g, y
actionGroup.createActionTo$message(this, swarmSel);9 Z! @% Q6 M( ~! N7 j
schedule.at$createAction(0, actionGroup);
! C* b; K$ D: y) s) B schedule.at$createAction(1, actionGroup);, I3 P, N, V3 \2 e
schedule.at$createAction(2, actionGroup);: G8 M" k7 u* Q J7 O! d
: J3 G: x) i6 o
} catch (Exception e) {
" @) K [0 z/ t" J5 M: Y# C e.printStackTrace(System.err);; U+ T! x0 W: X9 i6 x. Q5 M- v3 n
//System.out.println(e); h# i+ K; Y$ I4 A5 t) c" U2 e
System.exit(1);# Z+ \$ T, i7 g/ W" M' |7 N
}
, [: Y6 D5 h' h/ w% s1 {
( b S5 O I5 s# g5 q8 T# x5 n# p! j8 y( H; N& w5 e
}
% g# H$ Z2 }: F8 {# w7 {, @# K: A& C) U
private void swarmSetp() {4 B1 o5 ]& }: }
list.addLast(new Agent(Id));
" |* u8 M" U# L) i' V- |& z9 E# @ Id++;* ]5 K+ ?6 w" I# u4 w8 @7 |+ H
}
: a8 T" J4 {+ n0 w, U' s
) G7 {9 f# J, U& V T- Y public Activity activateIn(Swarm context) {7 e6 \$ O e" B: y+ _
super.activateIn(context);, Z3 L* |5 p* f! m$ x5 _; I4 {
schedule.activateIn(this);4 |9 b7 }4 ^. _. T
return getActivity();* I6 g r/ i0 ]
}
2 a" V6 y# X4 F+ s7 B) ?
; ]% J7 L) h! c public static void main(String[] args) {
- ^6 F/ r& s( J6 Q+ X2 Q5 M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% E3 Z6 T+ c- h- C* i1 N" m( o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ ~ Q# O. u$ ~4 }: p7 `: u swarms.buildObjects();
3 B3 p# v6 S0 \- [7 ]7 G' m swarms.buildActions();3 E; a- ?- K) L
swarms.activateIn(null).run();8 o6 l( w" ^6 V$ H/ n0 P* O [/ O
}$ L: y9 {9 T4 n
* g( ?$ J* P" p- O& E} |
|