|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; w% d3 q9 u, h$ _' d* }3 k& V1 f7 R C) j6 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 O0 d3 b! W- O6 E1 d% [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 [8 Q6 b) x# R: w& M/ @
swarm.SignatureNotFoundException/ E9 s( P( l/ ~- P$ w
at swarm.Selector.<init>(Selector.java:76)
! |9 |3 E3 _ e T at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; b" ^1 S; F3 N. Y! _6 C, t2 E at ActionGroupDemo.main(ActionGroupDemo.java:67): q# i: e0 E* o, S( Z2 c/ a+ B
5 z' ]' q! P; S5 Z+ J
. \+ c4 z( G* c
import swarm.objectbase.SwarmImpl;
$ `8 T0 R( B) L0 r0 f) k* vimport swarm.objectbase.Swarm;: j! \3 n( v9 H) y' i
import swarm.activity.ScheduleImpl;" M$ `% p( W) j, m1 k- w% y
import swarm.activity.Activity;) n5 X! I7 O/ o3 h* A! K
import swarm.activity.ActionGroupImpl;
$ f9 a7 l% P! Wimport swarm.collections.ListImpl;
4 C t3 \3 r+ w+ D: Cimport swarm.defobj.Zone;
9 X" J4 z, k9 n7 @; Yimport swarm.Globals;! a! L( [9 U8 `7 D. [" } V: P( y
import swarm.Selector;( ^* Z" @2 e) u' X/ Y8 S3 X
import swarm.activity.ActionGroup; # `7 S1 \1 G! z$ C6 D5 I
class Agent {) R- l6 }: |9 L \6 p
char id;8 G( j* v, V, U
3 L- Z, r/ Z. c: g$ M Agent(char id) {
' \0 e9 I6 S; W" W this.id = id;, n$ s8 U4 H6 n- l$ L$ C
}0 L% w. r1 _' q5 K+ A" D
5 Q' h, b, |* \5 s5 Y4 F s1 C
public void agentStep() {
7 p- _7 c% M: g- R' I& {9 } System.out.println(id + ":" + Globals.env.getCurrentTime()); p- Y Y4 g6 Z# f1 V! X
}2 u+ a- Q$ q0 Z
}1 a$ K) {$ Q1 T. u; k
0 v! \% J# O2 T( v/ V7 z) Q, w) b
public class ActionGroupDemo extends SwarmImpl {
8 i, T; ]3 D, V2 d* ]# t ScheduleImpl schedule;
& B. c( F2 _2 g1 `' o ActionGroupImpl actionGroup;. H0 p, ]/ ~& L5 n# Q
ListImpl list;
& {; v6 @" s2 B% \ char Id = 'a';
: Q J& [* {$ }
/ ` o% W6 a4 s( W. c1 F ActionGroupDemo(Zone aZone) {
* t# Q3 |1 s2 q$ [7 ? super(aZone);. ~: D: I% x( @
list = new ListImpl(aZone);0 a1 W+ p& E8 ]" ~7 D
swarmSetp();5 i! G; D: Z3 R1 q1 Z
actionGroup = new ActionGroupImpl(aZone);( K2 Y _- T. z3 b
schedule = new ScheduleImpl(aZone);
& _5 Z6 v7 b6 A8 J, f; l6 t! \ try {) i+ {' T; y0 a; Y. A5 e
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ V: L6 Y8 _4 i4 ]! ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# r7 `! M, k/ f# x0 }* j, e5 I% k) V9 k
W# c+ J) L7 y. A( u
actionGroup.createActionForEach$message(list, agentSel);
2 v- n& m, ^/ P actionGroup.createActionTo$message(this, swarmSel);
& m+ n6 c# Q! Q2 U9 [. N/ r5 S+ C schedule.at$createAction(0, actionGroup);
; J+ Z9 |; U0 D! I schedule.at$createAction(1, actionGroup);
4 m7 [ C( V) Z7 D# k- ] schedule.at$createAction(2, actionGroup);8 v, C8 \* d) ~: G' b4 D6 i
; }8 Z/ r! `& ^ d% J
} catch (Exception e) {' y5 {. l1 h7 M2 L4 J1 m! L* P7 Z: Y3 G
e.printStackTrace(System.err);6 x# o8 O; b, D
//System.out.println(e);
% f# A: `2 j( n {% X System.exit(1);
5 t2 x5 q& Q" W. p$ D }
5 m/ w$ z5 L* \/ j* t7 G6 ~
" u {* |; X4 m- T6 F: a1 Z! l+ U; f* y$ ?" F
}
& C& o Q& Y1 H& E. @, M0 C
) p) B. ~# v8 S+ s0 J5 E private void swarmSetp() {! H! g9 b+ ?% K2 S1 U( b
list.addLast(new Agent(Id)); ~( {8 i4 x5 q, D' s% W6 F
Id++;
- h$ o0 O; |$ d }2 z" |8 |* [ A8 j, Z- X
( X# ]/ S) r, y4 F- O public Activity activateIn(Swarm context) {
& ?( K3 {, y7 u1 M: t super.activateIn(context);
- { i+ I+ H7 ~; L9 j schedule.activateIn(this);
2 m1 i( G6 |6 h- x3 H. j' e return getActivity();; @. X& K3 ]7 A; s5 ?) N h
}
g1 c' H" J# ]( K
& ~' ~, l1 M! D, _7 | public static void main(String[] args) {" J. \8 M* h3 E. k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( l u' E5 r, V) r8 l3 o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ D1 Y1 D, j# ]6 b6 |, B: L; [" g+ X swarms.buildObjects();. b* o0 x' z1 V
swarms.buildActions();- w4 M" j s H; h0 \; x, v8 e( E0 z
swarms.activateIn(null).run();
9 e- E1 q5 z, b }0 a+ F' ~8 P, _- r5 ?! R, H
! A& Z3 n* ~# D, x+ g) N} |
|