|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 Q. o6 c* ~6 Y5 F" S
; y5 Q" ]8 t6 k$ v! f8 I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# z0 O( C) [+ U( n3 m8 H: o- i2 I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 [" C' m; F! U" _& V: i
swarm.SignatureNotFoundException
; q1 X) k/ S9 Q* P0 _2 g/ W$ \$ R at swarm.Selector.<init>(Selector.java:76)
" D, J' o3 w- Y! P4 ~; x$ o at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# \: ]& T, y0 G( }; F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! ]& C( _6 F6 U3 F. I, }' H8 A! b4 Q( M$ @2 c$ G2 Y$ j
8 a) a5 ^; o4 ?! Z; q! {6 Pimport swarm.objectbase.SwarmImpl;
2 N; _6 p9 q6 C! E$ B0 Rimport swarm.objectbase.Swarm; k& {8 n3 T7 V% S& p. O; w
import swarm.activity.ScheduleImpl;
& p4 Q4 E+ A* T6 a/ z! aimport swarm.activity.Activity;
6 Y" r( e' |7 H- w3 zimport swarm.activity.ActionGroupImpl;$ }& X1 A, w; X; I
import swarm.collections.ListImpl;
' A' ~8 r" C" f/ N: x* T: himport swarm.defobj.Zone; ' e* w" N; O6 o6 ]" O; S
import swarm.Globals;
6 r4 m3 J! I4 S6 s! P& [import swarm.Selector;0 G8 E( J( s4 ]; h v; C% T' v/ z* c1 b
import swarm.activity.ActionGroup; 7 G9 \# t3 r* h1 G# s2 t
class Agent {
' O+ w( p. u& o& ~- H char id;( e+ g0 k! {' }7 ]1 n( H
! v2 S- k; C8 r
Agent(char id) {* o" O! p) k5 L" v4 T
this.id = id;
1 i2 U" V& s+ y }5 H4 R h8 E0 {2 P$ b
2 j0 E9 b. b3 J, |4 Q9 I7 ]6 N$ ?
public void agentStep() {# A) \- m8 E- c3 [! x4 M9 r/ Q
System.out.println(id + ":" + Globals.env.getCurrentTime());! a% B9 b+ i2 P0 D G; _' t
}: d9 @7 k" D& B6 I$ U5 q. ]" O
}6 y/ S! J& A# j. S
4 I$ W5 C+ n* d! V( d5 N
public class ActionGroupDemo extends SwarmImpl {1 R# y: z6 X4 J" l; |
ScheduleImpl schedule;
8 {& y: W4 F8 M+ O* y1 Q$ x ActionGroupImpl actionGroup;/ |& U8 C4 r* g0 ^! A1 `/ X7 P( Z
ListImpl list;
+ F3 s& O# ~$ |" X! q char Id = 'a';% U0 k/ M. ]' M9 A) [
- n, C8 X" J- O e5 Q ActionGroupDemo(Zone aZone) {* @6 y' P* i5 b" W
super(aZone);* j" T- R' _4 `2 F
list = new ListImpl(aZone);4 c; f. |- Y+ @
swarmSetp();
. |# z" q$ ~3 B N actionGroup = new ActionGroupImpl(aZone);5 Y5 f" B4 M; z& }+ O$ Y3 j
schedule = new ScheduleImpl(aZone);
! \5 ^, ?8 d4 K2 r$ z! a* K5 | try {& b% q, D* j7 K: u8 U3 `$ r5 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 {. M# P2 J1 Q. B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" \$ f S) Y; R
! q0 R* _& A: C' `2 s actionGroup.createActionForEach$message(list, agentSel);1 m' Q1 d W @% R6 Z' I
actionGroup.createActionTo$message(this, swarmSel);9 Z2 P" G9 Y' v, n
schedule.at$createAction(0, actionGroup);
( X1 D9 {* e5 W4 B V- o% } schedule.at$createAction(1, actionGroup);
. _3 y% v' G, r schedule.at$createAction(2, actionGroup);! T' M5 P: ^- N( v; b
+ r% i0 c9 V; ^$ ?: X2 K+ t& a } catch (Exception e) {5 N, d( M. A* [ n2 n9 b
e.printStackTrace(System.err);
% A- |& @5 m- v! e" G //System.out.println(e);
; i% [( P+ g0 d( B/ q4 ?+ R8 p0 M5 V System.exit(1);
! s/ G5 K& T. @& W/ r }& h; J a' X+ t0 o) G7 R
3 O# E) d7 p! E( B6 m5 U
9 _3 n( f9 [! b. x+ ` } N; ]" Y7 h) a. P/ H* O1 n- |3 I/ \
- }3 Q6 T# s# H# o% t; K
private void swarmSetp() {8 [: x: Z! s5 z/ p+ x" d
list.addLast(new Agent(Id));0 A4 | J/ |9 N/ v
Id++;; |3 o/ P9 n3 U, |' y- ?, A$ R# m$ M
}$ g9 N2 I/ M+ J; y3 ~ @/ f/ x
* b5 m( ?5 `7 R0 t; r& ~
public Activity activateIn(Swarm context) {
9 c6 l: j: b" E k super.activateIn(context);
8 e, u7 X* N! ^1 F6 q7 W# K0 l! E schedule.activateIn(this);
' S; w m( d: h/ N return getActivity();
4 g$ ~4 \0 D" r0 I% }; p% Z. n }4 h0 M. e7 Q) x
2 E: n1 ^+ G$ }% q, _3 ]4 N+ L4 x- B
public static void main(String[] args) {
8 _2 H2 |) B0 b* I Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 K8 Q6 M: X% O) r6 R* \ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 ?1 J; x% ^9 f7 W/ u swarms.buildObjects();* X: Q/ a9 J3 X6 R" R
swarms.buildActions();
' C! `: y8 w' w! O swarms.activateIn(null).run();3 _% L8 v& u' ?5 m& n4 g- ]
}4 a, n% `- m8 f' [0 H
; b& L7 q1 E4 P6 Y} |
|