|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " m. w% ]2 }' Z/ t# t9 G
7 [9 x+ G5 y- X5 [" E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# t, f" H9 I( Z1 R0 _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 G2 D1 ^5 O# l& Xswarm.SignatureNotFoundException
9 w0 I& [4 c1 c: N at swarm.Selector.<init>(Selector.java:76)1 G: [4 \9 N1 r6 Q& X* [! T0 F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& O' A& j5 ^6 t" s3 j at ActionGroupDemo.main(ActionGroupDemo.java:67)* K+ t5 Y8 `5 E" V& C9 C6 F$ X4 R
' f3 i- a% g! E4 M: B l/ ?
0 [4 z9 N6 l0 D& N( [2 Limport swarm.objectbase.SwarmImpl;. ^0 h6 _- j. @4 B% [: v: i3 _
import swarm.objectbase.Swarm;, @# J! I+ s F4 D3 m: R i, \
import swarm.activity.ScheduleImpl;
8 ^ U9 I0 v( J# e$ C* aimport swarm.activity.Activity;
3 ]6 M' e2 C2 b7 I; Q' Cimport swarm.activity.ActionGroupImpl;8 ]* s4 ^: ^" B. M
import swarm.collections.ListImpl;1 u m b. y2 ~! T5 z, e
import swarm.defobj.Zone;
" w5 Y s7 n4 @0 y pimport swarm.Globals; s: X$ t1 @3 g# e% K
import swarm.Selector;
4 e+ n2 O1 X+ _, g; F0 fimport swarm.activity.ActionGroup; " [, c; z t( Z
class Agent {
! e3 B& c- ?+ x* \; E! v( Q char id;
4 z' x! Z. f& X# m# e' r" }9 V4 B, U, q/ Q% u
Agent(char id) {
9 x* i7 H+ |6 L2 a this.id = id;1 X1 ?9 Z' _$ G" Z- v3 t
}% a7 v/ `$ V D
1 ^1 }9 ]- Q" \9 N public void agentStep() {( w; E9 t! _+ A. Y! \( T' C5 J
System.out.println(id + ":" + Globals.env.getCurrentTime());, v0 E- T+ ]+ a7 J& e
}
: R9 a; Y5 L% u, A: F}
& J4 ~0 {. d0 i1 g, [8 H9 N2 ~) Y
2 q' P% K! ~9 E% N; ~" v, Dpublic class ActionGroupDemo extends SwarmImpl {+ e! \# X: q. B
ScheduleImpl schedule;
) {5 E0 w, d5 N& q2 M% L6 G7 d" G ActionGroupImpl actionGroup;+ I' Q( R; r3 r/ n/ u
ListImpl list;
9 U4 I2 n+ a- U$ t char Id = 'a';
_$ B' I$ `$ j! a
* Z5 k) f, l& \1 o8 |) o ActionGroupDemo(Zone aZone) {; _' j, y/ s# {" L0 X
super(aZone);* |& J9 M6 k: a, {. t5 y
list = new ListImpl(aZone);" m2 Y s6 M& Y( B3 F0 B
swarmSetp();$ \! ]. j2 Z) Y& u; f
actionGroup = new ActionGroupImpl(aZone);9 ~9 k8 f$ {4 _5 f/ p- J1 Q
schedule = new ScheduleImpl(aZone);
2 U+ x/ W7 C T/ O& U try {
0 K$ w4 H' F; z) X Selector agentSel = new Selector(Agent.class, "agentStep", false);
. t, k% a4 _ I, b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* ^7 A9 y, K! p# ~
/ g! R) Z7 C% i4 Z
actionGroup.createActionForEach$message(list, agentSel);* H& x$ y( J b8 v/ X% O
actionGroup.createActionTo$message(this, swarmSel);
0 l( w0 S9 P3 k% I% p schedule.at$createAction(0, actionGroup);
4 Y ?+ K4 S* r( T6 v9 \" S+ e schedule.at$createAction(1, actionGroup);
6 H8 Z, h% J5 {2 i schedule.at$createAction(2, actionGroup);; U" d3 y% T- H. q/ R9 [' q
8 |" K0 H' V) E9 F$ M! A" e; R1 Z( K7 I
} catch (Exception e) {" x4 U2 r7 G) I* K1 |9 ~# a2 O
e.printStackTrace(System.err);
( W5 {4 I/ [2 [) Q //System.out.println(e);6 l G/ i/ [4 q, K; e& a8 J
System.exit(1);
( H1 @! r2 S6 c5 n# r3 f }
a9 y6 H- l, }3 |
5 D6 o" i' u; x( Z+ T# c
' M! f+ C7 u! h0 M: l }
$ G1 Y. U9 ]3 v) f, ^& A1 p2 P1 L! |- g: S& u8 R" [1 S) p
private void swarmSetp() {
- @0 r- z0 ?& i/ X) n3 d list.addLast(new Agent(Id));$ f* h; V1 _# S5 y- H+ X; a
Id++;8 J% C, d, k: {4 z
}
5 Z- J# T1 _5 E8 u) n) P+ y2 p7 }: X" Y" A' ^$ p. K7 f: [
public Activity activateIn(Swarm context) {' o, ?9 a* {1 ?* n
super.activateIn(context);
6 T+ L% A* X1 v8 h schedule.activateIn(this);
+ J1 g# E; L& V+ x/ D- m6 d) V return getActivity();
& R- p/ Z6 n- f% F7 F }; x3 y3 m1 K& A
! J8 a) z9 y) f3 Y& i5 L+ o/ j5 S public static void main(String[] args) {2 ?$ h; ~$ T: B0 Y9 ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 R- F6 J" u/ X. g8 I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; V0 ]5 I2 g* n+ l2 ~5 { swarms.buildObjects();
4 u" N' k7 p; m9 ]/ k1 M! { swarms.buildActions();
2 r) D9 x6 b, h' W swarms.activateIn(null).run();
# O1 h4 c: `2 b# V }
- _- F7 G- ]; q5 m- Y! W8 |+ E. E0 V9 J. W4 M! E: N% y
} |
|