|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ g. D! p" g/ {% U8 H3 W; h9 ^7 ^3 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ [5 l. B, O; v0 W( C5 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 w# q1 C5 I0 p. I0 a2 o5 z# K
swarm.SignatureNotFoundException
: I* ^7 H, N* |1 X at swarm.Selector.<init>(Selector.java:76)5 f: K6 E6 R4 U; |' q( D( k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 i( f. Q) K, |- E9 k at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 u9 r" A# R' J5 K& Z( f6 m3 t1 a0 p% e4 n+ f
* m8 i0 R9 o$ I2 `, F1 E. J! H
import swarm.objectbase.SwarmImpl;
* b; r& ]9 D8 K; T$ M! D, yimport swarm.objectbase.Swarm;
_9 A9 L# B, _1 wimport swarm.activity.ScheduleImpl;9 E2 M* h; s q; ~; O# H0 N
import swarm.activity.Activity;
* n" B3 L; I9 {' r/ R, {. n9 b; simport swarm.activity.ActionGroupImpl;6 X7 K* Q/ H, @
import swarm.collections.ListImpl;9 ~/ S; s4 ~7 V& E" @
import swarm.defobj.Zone; ( e- F5 P0 t6 T
import swarm.Globals;
# K2 o2 g' b7 I: h' Nimport swarm.Selector;0 b/ F0 \: Z0 y ? ~5 `! t# S
import swarm.activity.ActionGroup;
5 j @' Z' l) b* P- {& C9 n5 Bclass Agent {4 e' L0 m1 s7 d( [" L
char id;
* a5 A7 p" V( W# v% f: c$ p, R1 n1 L' O+ {9 _5 Y0 z$ D, N
Agent(char id) {
5 L0 a7 e$ {9 B: J this.id = id;
3 A/ M7 f+ M8 t _8 m }
7 J6 }. f7 A% @9 b0 Q0 d" `' o9 x# U/ M
public void agentStep() {
& O) Z3 u" q- [5 D* }, E- R System.out.println(id + ":" + Globals.env.getCurrentTime());
9 o0 _& A6 n; X4 I6 t' B }
" w! V5 }( N) {# y6 N" J; F+ a+ Y}' C# S5 o. _7 ~) W
' o& {4 P9 z0 n" O: V
public class ActionGroupDemo extends SwarmImpl {
5 r" S) \$ B5 ~2 n! p7 ^5 g& m ScheduleImpl schedule;
/ O: u4 C: s7 B' ~0 `" P. z ActionGroupImpl actionGroup;
5 w. q# j& s7 Q. C! a ListImpl list;9 w% O% Z, b m% C% A
char Id = 'a';
* _% K9 T1 B6 g9 l
4 X3 [6 a# ]( O- F$ I& I, G ActionGroupDemo(Zone aZone) {
2 _1 w( m2 J+ I6 Z super(aZone);2 X* I8 L" p3 k! d
list = new ListImpl(aZone);
& }& l: x( ~5 H4 S. ?, S+ V1 D swarmSetp();
$ v# P; U# V% @% h; { t( t; j actionGroup = new ActionGroupImpl(aZone);# l7 j3 q8 M! S" C
schedule = new ScheduleImpl(aZone);+ t8 J' x1 B& {2 n- a8 P5 W" w
try {0 i1 B) r* U# y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( }: W; @1 y/ a _0 l" `/ k: r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ x0 C( M: c5 w$ l6 J 6 x e, _1 ?. h* d) }8 `! k
actionGroup.createActionForEach$message(list, agentSel);0 F# \5 k( k" f. q
actionGroup.createActionTo$message(this, swarmSel);
+ q, `& K( w R schedule.at$createAction(0, actionGroup);/ W) G9 E* J8 i- t# k; R3 ]1 p
schedule.at$createAction(1, actionGroup);
" a" l4 _2 ^! M: d6 ^# M$ o1 S schedule.at$createAction(2, actionGroup);
0 w; {6 m8 m7 H* V9 A
/ C; O( X. R8 w/ k/ S } catch (Exception e) {
+ W+ A$ n0 F: Z- q- j e.printStackTrace(System.err);" N* Z/ _/ U3 _
//System.out.println(e);
: E% d1 i# g2 }; y: J. H/ I System.exit(1);+ C w4 m* l0 f0 U( d9 I
}
7 ]! {& P' }2 J6 S" _6 L5 l0 l
) |# ]* J+ O! v v) F4 ^& d2 ]7 L$ \
}
, a* ]# n N' |- ]
! x$ E$ v# ] C, z private void swarmSetp() {! A5 g$ t; m: O2 m) w8 a( n8 c: B/ T
list.addLast(new Agent(Id));, O+ s0 V% \3 t2 K6 f% ]
Id++;3 N, W! A3 X$ ]5 c
}! e% ?) f% q4 Z4 X) B
3 N# R$ E4 } [0 T public Activity activateIn(Swarm context) {
5 f' ]6 _9 P# B4 Z0 p" N super.activateIn(context);
# @+ I0 L, b" w o schedule.activateIn(this);
2 n& _+ n3 }+ l! ]3 S8 D* c% U; C; }" Q return getActivity();6 w% U( u. r, n8 n. f; u, d0 r
}
1 H+ Z7 C! l R% N8 q
- k7 C/ i" f% p' _ public static void main(String[] args) {
" K/ v) V) k: z2 Q9 F+ m Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; S+ V( j- _6 R; O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 w+ ~" j" F- T0 P4 D9 m0 r swarms.buildObjects();' ~5 D; N) W a
swarms.buildActions();& T4 e6 n% u5 Y3 M' `+ f
swarms.activateIn(null).run();
0 K6 [! e/ @) b0 }# a) X& p) V }& Y1 h9 J# D0 \* F
, f; a- U% m: m7 `} |
|