|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ R( G8 }% [1 {9 \& ^0 l7 M1 q6 q2 Z% q- N& z W d9 D. }' s9 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) A4 Y1 Q. {% y8 @& ^+ U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. C- A4 R3 n# m' o' X& k
swarm.SignatureNotFoundException' W0 z# n, A, F. y
at swarm.Selector.<init>(Selector.java:76)7 C$ N& \8 s4 e; ]. `
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 W7 E5 J, l% _8 K, X% {
at ActionGroupDemo.main(ActionGroupDemo.java:67)
@2 V' [6 G0 Q% Q+ y" z' Y$ J( M
0 t" u- b. d: s8 r. R8 D$ Aimport swarm.objectbase.SwarmImpl;( I; Q4 q4 s2 C+ @" }( \
import swarm.objectbase.Swarm;: S5 {% T3 g U: k) d- a) U+ H
import swarm.activity.ScheduleImpl;
: t- u" I- E4 R1 o$ G5 C% T. i5 uimport swarm.activity.Activity;5 c1 K4 H& Z3 Q3 [( o
import swarm.activity.ActionGroupImpl;
& L9 w6 W7 b P# J" k( b8 iimport swarm.collections.ListImpl;
/ U0 c2 s% ^4 S! J! H* L6 Himport swarm.defobj.Zone; ' _8 V: H# Q" N) t7 Z
import swarm.Globals;
% d- U4 N- S% Pimport swarm.Selector;+ ~( I) e5 r8 a8 y7 c
import swarm.activity.ActionGroup;
2 v& ^: Y" `/ J9 P, cclass Agent {+ B9 h, f4 U _6 N2 t! K$ J1 M4 g
char id;8 {; k/ I! x# [
& _' n9 E) L" W3 ~) ] Agent(char id) {
0 M0 a! c. N7 \+ S" l this.id = id;
' u, J5 B& T# H# D* n- y }" e: |, D( A% d4 j" P9 \1 r' m
; ^: s5 B7 g- u. _4 T
public void agentStep() {5 d( y( l q1 l: Z5 Y
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ E+ A: E [8 m$ k, Y$ K }5 C p# q! j& A) B" o# b- I
}
4 G0 ^$ K: [9 g# V0 M# k! F ?$ x- b4 i2 [- j
public class ActionGroupDemo extends SwarmImpl {
9 p9 a! b9 s# n& [+ `/ z/ g ScheduleImpl schedule;
" w8 c: s) q5 v2 F ActionGroupImpl actionGroup;
3 Q7 k3 u' l3 q6 } ListImpl list;
( r# d) F. M k char Id = 'a';
2 Y' r, s( q2 _5 l; \2 J+ I/ }6 U- C% E6 ~$ D& i
ActionGroupDemo(Zone aZone) {/ s& h+ H. ^" E
super(aZone);
/ \. c: Q0 s- H list = new ListImpl(aZone); m" G; f6 ^; o! K" P- D
swarmSetp();& q3 p" Q5 a Y @) L- E" W
actionGroup = new ActionGroupImpl(aZone);
4 \1 ~ \, s, F9 B schedule = new ScheduleImpl(aZone);
" o, U3 G- o9 K/ X; l3 O ] H try {
1 u, ^2 Y" Z) O$ }: b0 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);1 `' |1 t4 C. j" D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' O/ [1 t5 M. c. b, z) v$ x
# V3 F! K: e; I actionGroup.createActionForEach$message(list, agentSel);: D3 h/ ]; [) V6 L- K3 C) x6 h
actionGroup.createActionTo$message(this, swarmSel);
9 i; q4 U% e i. T N& u# @ schedule.at$createAction(0, actionGroup);
. G1 u. q& j3 f1 z2 {. i& X0 g schedule.at$createAction(1, actionGroup);. {3 l( P# `9 j' u3 I
schedule.at$createAction(2, actionGroup);
2 O( }( p& _+ u: t( Q. P6 a; j: X0 r. G& d- n
} catch (Exception e) {) j- z, w% H0 p* b- Z1 `: i
e.printStackTrace(System.err);
! {4 j0 R6 ?6 r9 u //System.out.println(e);% L" {' e( _) i5 P' j% S
System.exit(1);* ~: Y/ K+ |) B( m
}& e3 [! w$ z4 E! K; W- Z, L
- y* x* n9 p4 h; \: a% T6 y r) k% `
. k3 z, t# n( R }% k6 X/ k* q. m' d; }) c* X
8 |, {' V- L K1 W9 z; @
private void swarmSetp() {
6 l1 |# v6 J; s- n' b list.addLast(new Agent(Id));4 ]* D5 Y! W6 e- J% v9 M
Id++;
9 E5 I8 P! B/ F J }& t: v" u# X. z4 y/ g V
1 a+ p/ E" g( [6 x; q$ |6 N4 @2 |+ m public Activity activateIn(Swarm context) {
~$ h+ |$ g w' | |5 I2 g super.activateIn(context);; t1 D6 g; B* j
schedule.activateIn(this);( l; P, q0 l" j) O) O
return getActivity();
& o: c( G Z4 S& ^2 |" f }
+ i% u# |. R9 i# G! Z
# Z0 O* c) `- w, g( i( H public static void main(String[] args) {% Q- e+ U( f+ Q1 }9 b4 l( [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ J* e- o7 v1 v5 } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 X0 ~$ O+ I; w( t- t& U: p swarms.buildObjects();1 ?9 Q; g9 t! P7 W1 y
swarms.buildActions();) I' V0 B+ S/ c4 ?
swarms.activateIn(null).run();7 G) G6 y7 p0 j4 ?1 E
}5 z+ g* a! b6 k# ?- u
) l( j. p- s+ @( ?
} |
|