|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. l: w2 b5 l" z% p& d, I. q$ V& e- G' Z* D$ e6 U4 `4 `9 B9 S; e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ M$ x, _# {3 L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." D c! T' l3 V$ x. v/ i
swarm.SignatureNotFoundException
! g0 D; [. d7 b {& K at swarm.Selector.<init>(Selector.java:76)
8 x @, ?% y( n' e% }/ V& r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 L4 I; N6 v6 f) W/ D3 T
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 c, E" Y% [+ F$ |) U
' M8 J, G& E" h& \3 w' T O8 C, ~! T6 b5 ` H
import swarm.objectbase.SwarmImpl;
7 V% a2 K, p5 U; Vimport swarm.objectbase.Swarm;
- Z3 s6 ]* f( x* K3 M$ ximport swarm.activity.ScheduleImpl;
, O/ h @- c& Y' M% W' }% j$ Himport swarm.activity.Activity;. V2 Z% B0 b: A9 W9 D4 f/ M
import swarm.activity.ActionGroupImpl;2 E+ Z0 O7 h1 S" T, @& f S
import swarm.collections.ListImpl;# u n* D8 Y" i! P2 t1 T/ @* Q% w( ~
import swarm.defobj.Zone; 2 |" |1 p. g$ \0 x& Y: k: K
import swarm.Globals;' p' b- W1 s5 W C& o
import swarm.Selector;+ Y% A) v' A( ~* W/ n. b0 f
import swarm.activity.ActionGroup;
. a3 [% X# t+ q ]class Agent {3 [2 U0 i& k$ j7 c
char id;
* f) Y" Z3 C+ ~- M8 M* |# X' G- w) b# q1 D, P* q* F# F) C; G2 ]
Agent(char id) {6 R- g, O; Z: i, n* q! d+ g
this.id = id;( g: d1 P3 m+ {
}
, A! k# j7 a R) ^( N( @7 M- q- W
, K. L% b$ N! J, o5 q C9 q$ ` public void agentStep() {/ ~+ H- w4 I* N: e/ r. g0 j3 B) P
System.out.println(id + ":" + Globals.env.getCurrentTime());
& ?8 x5 V1 x+ T% l. I2 Q% [3 s }8 q. l0 \3 }, H. W
}
, ?, ?8 W3 u) c/ A1 F+ {' ]+ y
% @/ D% T9 m. R1 Y' N7 I: I! v0 epublic class ActionGroupDemo extends SwarmImpl {
: y5 x. t7 F/ s( l. ~% v+ {) q* {" H ScheduleImpl schedule;, h! o+ E" F9 K6 y L1 _
ActionGroupImpl actionGroup;
9 t0 ]2 C1 X! ~. Y: D ListImpl list;
# I u- h3 U2 b0 ]: z char Id = 'a';, l1 w4 _- t+ ~) T
2 @. K7 m( i. ?6 O( v k ActionGroupDemo(Zone aZone) {, Y" V/ b, i6 q. Z% [! i8 |, d8 l) @
super(aZone);
; b, p6 ~# m: ]. h) Q list = new ListImpl(aZone);
- }/ I2 a# G4 g swarmSetp();! K" b* m" ]7 u: r+ l2 c) r
actionGroup = new ActionGroupImpl(aZone);% f( t2 C0 [* r% _6 b8 }( b
schedule = new ScheduleImpl(aZone);
8 c, n) Z/ D! p9 w try {
% b( {" D% ]4 L. `! p Selector agentSel = new Selector(Agent.class, "agentStep", false);0 o7 t2 d. X# z$ `: N* M9 M- [$ c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 _! Q; k* \# }8 r * j- n+ A9 E! H9 v5 K5 \, g; X
actionGroup.createActionForEach$message(list, agentSel);2 m" Q z' r" [( N0 G5 D5 l2 Y7 F
actionGroup.createActionTo$message(this, swarmSel);
6 U& X- f" G- S, R1 y/ P, Y, b: P schedule.at$createAction(0, actionGroup);
0 R& K, S1 s5 {# J) ] schedule.at$createAction(1, actionGroup);
, g' W# r/ x% J; O% B5 h schedule.at$createAction(2, actionGroup);
! }8 } |* B8 Q0 }3 j( z
: T a/ I9 z5 U$ |, { } catch (Exception e) {
- D$ Q# _$ P/ G( \7 Y e.printStackTrace(System.err);
3 M0 s8 \* |2 d //System.out.println(e);
$ u' R+ k9 g# N9 B( k5 b System.exit(1);/ q. p$ a q; f7 d
}: h3 g/ t5 } @) I
$ a% o4 k! m& L' ~! _' O( B3 E" n2 J- Z
}( q5 t, ^/ J1 y* c) ~3 L1 I: q
/ I1 j: L; Z) A \! I" v4 c
private void swarmSetp() {# N/ ?# Q+ q) |( I/ N8 ^
list.addLast(new Agent(Id));" J! P9 n8 c% l- g7 D/ k' E! K6 g+ j
Id++;
1 N6 }; x6 B$ P% g; P }
4 m' i7 b2 |( ~' x' h% p) x8 b( P
public Activity activateIn(Swarm context) {$ |& l2 U0 z' C( l& j
super.activateIn(context);/ ?. z4 i6 u" [; b" N
schedule.activateIn(this);4 A+ W9 `8 }" F5 R% Z
return getActivity();
4 G$ _! y% S5 c3 w( S9 L% P }; q1 H; A; D) `* S/ L2 z4 X' D" I7 R
. S3 J% p8 y; m" c$ H* e' A
public static void main(String[] args) {
: P# Q* A- q5 P6 X. v" x4 L% f4 a# K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% W# G: ]/ w& `5 ]( s" U" r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' [6 f! C( z0 P4 C6 { swarms.buildObjects();
/ S, d0 C6 S; r& x swarms.buildActions();0 D+ C0 a6 U$ |3 q0 ?
swarms.activateIn(null).run();: u6 s2 |* c" \. @; T
}* S7 q! J8 t) r0 s$ f
- j$ X* K+ {8 u2 ?. M( t} |
|