|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; l! d# ?/ e4 }' h
8 @) T0 [0 o7 ^" [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; r3 s. E, Q k/ [5 ?0 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" f6 |8 R0 I) \: }; r# C% c6 k2 q4 \swarm.SignatureNotFoundException
9 R9 X- s$ l2 w& N at swarm.Selector.<init>(Selector.java:76)
0 K& J# o7 [8 b3 T- { at ActionGroupDemo.<init>(ActionGroupDemo.java:37); U/ P' e- Q" K" J
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 f/ u. e+ ^6 l( H5 c
- C8 _! [+ t: U0 W
8 m6 b: y: i. G# Mimport swarm.objectbase.SwarmImpl;
, |, R$ n9 f" f# ~import swarm.objectbase.Swarm;3 z# z6 [; l' h9 p0 ^' z
import swarm.activity.ScheduleImpl;
" {) [# ]0 E" k& H! ~import swarm.activity.Activity;
8 A' M Q k& C8 u7 fimport swarm.activity.ActionGroupImpl;
# X( p+ o: \7 Q, `2 L, l z* @import swarm.collections.ListImpl;$ L0 N' R% b( ?- S8 a4 Z( f
import swarm.defobj.Zone; 0 V% e4 e% R+ T; u. k$ Q/ q9 ?- T
import swarm.Globals;
* \1 t$ i2 e8 }) t3 t! himport swarm.Selector;/ i# J% ?9 y" e0 j3 U
import swarm.activity.ActionGroup;
3 {4 |- Z0 B, V2 xclass Agent {$ H. `" ]- J8 @) Y$ [# k
char id;8 m$ S1 K" x- L5 E$ g
8 N+ F5 |1 q* p" r Agent(char id) {& {4 M S: B) a! ?. M- ]0 p
this.id = id;' C: a1 }1 ~2 m# Q) M- b- b
}: c# J9 X! K& i! e: b9 S
4 A7 {9 ~) |! F" o5 l; C, d; k' N
public void agentStep() {
( F3 N2 x3 r+ ~0 n: i System.out.println(id + ":" + Globals.env.getCurrentTime());; K; K3 t! W9 c/ m" \
}
: ]1 }+ r8 H0 x. b; J* C o}6 H0 Q- ?8 c+ C! r7 a" }
L: n1 F4 b' d9 R
public class ActionGroupDemo extends SwarmImpl {
^& H/ E' `$ s. ?* k( u, S. J ScheduleImpl schedule;
3 W8 C6 x$ S9 ]8 H ActionGroupImpl actionGroup;
4 W: Y* C* ]9 ~" t9 z2 p: i3 ~; N ListImpl list;
' }- v( h/ I+ f% q, x char Id = 'a';
/ p6 x: Y7 o" `3 F& K" s4 [5 X3 K& V p
ActionGroupDemo(Zone aZone) {! H; Q. ?% k3 H; g( X
super(aZone);
' B1 m/ [3 V1 s, ]6 ] list = new ListImpl(aZone);
/ R3 q8 W& G) k swarmSetp();3 W+ Y" |. \4 E7 `' d
actionGroup = new ActionGroupImpl(aZone); g# A3 L$ o& t3 ~. e/ \8 g+ u
schedule = new ScheduleImpl(aZone);$ |1 I2 i, x" ~
try {: i& u# W: |8 A6 C2 l# [6 r! z# P" C
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 P* x9 g; o2 j# N Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 D T- T. X9 o9 Q! R
8 k/ W" S% O; S+ i; Y3 k actionGroup.createActionForEach$message(list, agentSel);
/ [7 X2 @7 E. a6 s) t9 Y* j actionGroup.createActionTo$message(this, swarmSel); z; s5 j. k/ C" ]
schedule.at$createAction(0, actionGroup);7 s l0 i' n" R3 ^, i) n( z0 ?
schedule.at$createAction(1, actionGroup);$ e$ R! I% [" i1 x1 Z. ]
schedule.at$createAction(2, actionGroup);
4 j# w% t9 v8 F; I& L' b
4 P) X9 a) n4 o" o! N- {% \" p; c! A( ] } catch (Exception e) {
8 n# J" E# U' G+ | e.printStackTrace(System.err);4 y7 c% t4 A3 T. U) U4 h* [
//System.out.println(e);
1 t3 N+ E7 ~$ a/ ] System.exit(1);
1 ^' h& t; ~( Z% I3 k: q }
' C, e9 e8 b, o+ j5 A2 q ]( D) v: D) a' ~ R" k/ Q8 e
7 ]( w! w8 d C- o! d }
1 i; Z$ w$ E. `, j" ~5 r9 g
1 s7 x; e/ I" \ private void swarmSetp() {9 s, ?$ C1 \+ d
list.addLast(new Agent(Id));# ?9 s" a& O" D, W, \* i* m
Id++;
; T: R1 q% c9 G [ }5 N4 p5 }/ L9 a B
% P. ?4 s6 X# _, b/ r# P6 r public Activity activateIn(Swarm context) {
* F. l! b8 x" N% O8 o super.activateIn(context);
% @" c: Z6 K* h2 ?5 I/ B schedule.activateIn(this);1 s& g* q6 `0 @. `8 @7 i Q
return getActivity();" x `- @! V6 h" s; _. ?6 t
}
2 N; T/ Z( O( N7 B& _0 s3 s
2 A% ?; r$ @, }6 J. K' K: `6 q public static void main(String[] args) {
: ~$ C8 B8 b2 _# b3 D- S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- w+ {" \6 R9 C5 t; ]3 |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# {5 f8 K* o8 Z4 M5 Y; Q5 e2 k' A* Q" ~
swarms.buildObjects();; q) o9 u. N& M: F$ x
swarms.buildActions();7 e3 q( t6 `4 ~
swarms.activateIn(null).run();8 p! k: S0 G$ a: ~
}
+ X$ H. ^! u; C6 V+ Y1 a; }* M
) i. {) k. n" g# m& r6 S5 _; t, `4 V} |
|