|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. U" B+ c0 K2 f3 X# R
" r' R0 e$ g/ z/ ^# _, w6 f* n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 P% F% l0 i) v, e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 }2 _, Y- x* A1 V- g
swarm.SignatureNotFoundException
0 c! b, q/ }% k2 j, p) X2 K at swarm.Selector.<init>(Selector.java:76). _3 g1 E- C, ~3 @3 {! T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' Z- f8 I% Q5 P3 a" _3 e% M5 F/ I
at ActionGroupDemo.main(ActionGroupDemo.java:67)& k$ r; g$ z7 M! A2 D1 S- m
# x0 V' ]: C3 r/ H9 V
- y/ {! {$ R% A6 H! Q' limport swarm.objectbase.SwarmImpl;
/ Q4 C5 X n! F( m" Z {1 gimport swarm.objectbase.Swarm;
# u# ?- x% g& ?/ @import swarm.activity.ScheduleImpl;3 e% W' W) t" F: l& g
import swarm.activity.Activity;9 O3 @ t ?% a2 {% @+ c/ z
import swarm.activity.ActionGroupImpl;
7 Y. b, y1 l& f( Oimport swarm.collections.ListImpl;7 ]7 w+ g- K" h- E4 p% P
import swarm.defobj.Zone; & q5 C0 ?- i; E2 }" W# E( m- E$ d
import swarm.Globals;2 x" H, N ~ o! z7 W$ e
import swarm.Selector;
# |3 i& r5 u$ A1 x$ Qimport swarm.activity.ActionGroup;
1 `; P' N2 p6 Q# ~0 G6 d- dclass Agent {1 `% x# ]# K' A+ l
char id;
! ]- p* {' o8 s% ]5 r- \; U3 C G% f: V2 t
Agent(char id) {
. f# l1 b6 J1 w! J( A$ \ this.id = id;5 L% z* b j& U/ ]$ K- m5 ^
}
+ |1 F8 `( K$ a5 T
{' I- P, O5 v" u public void agentStep() {0 b9 y" I7 T) ]. c
System.out.println(id + ":" + Globals.env.getCurrentTime());
- w% l; g+ J$ A0 U9 B( h }2 }+ q6 M+ q. n7 [+ w
}
% Z8 [& d6 B3 m9 d7 n( S4 i
7 M9 ~/ e; \* k5 s! M$ Y. a. Hpublic class ActionGroupDemo extends SwarmImpl {
! Y8 }9 j% H C4 s- o/ Q& z9 Q7 P ScheduleImpl schedule;! v2 k7 k1 y( V
ActionGroupImpl actionGroup;& I5 z% c! C6 R! u3 q7 b
ListImpl list;# a& G& ]) }) O( m$ Z# w
char Id = 'a';4 ^5 L3 j" u* S K. m' V \& F% X
r3 u+ v# k8 Q4 `6 [& ]9 \; p
ActionGroupDemo(Zone aZone) {
% i7 ^5 X7 O. x! Z9 T( }5 ^; j0 Q super(aZone);0 \0 t4 h, s; g0 S
list = new ListImpl(aZone);
( F% Y8 w& l$ O' V, X! }1 b6 r2 d swarmSetp();4 A7 Y1 M0 a+ q) O. T/ s
actionGroup = new ActionGroupImpl(aZone);
; @4 m; D( Y% ~ schedule = new ScheduleImpl(aZone);( [" q: V. n6 X/ |' E& I1 g
try {
" ?4 a: _. M" D5 T, m8 ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);
' _4 Z1 S. ~6 t" ~0 x P' ^ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 a0 D$ j" D8 ~0 C q6 ^ " N' a! `" Y% Q5 u8 D2 a6 B- s1 H
actionGroup.createActionForEach$message(list, agentSel);
9 @5 W* C2 ~: |: U actionGroup.createActionTo$message(this, swarmSel);/ I# |) p: Q4 [# E* n) y* O
schedule.at$createAction(0, actionGroup);
4 s8 \! {( D7 c- O schedule.at$createAction(1, actionGroup);
9 o+ W2 n8 N/ e! B8 b n schedule.at$createAction(2, actionGroup);9 E/ R, N* z$ o/ t' T
' v9 M; h* o2 D. X } catch (Exception e) {
9 U6 K ~; J! {! x e.printStackTrace(System.err);$ e+ c0 ]# |& O) q& s# _, Z. ~
//System.out.println(e);" A) [7 ]: f. q* h! ?. w7 c
System.exit(1);
& ^/ y; N1 g4 p# y }& u! Z9 u2 J* Y3 T/ z
3 }9 y2 C0 v& l+ B$ j0 C( J
: H. e; e; p' d" O& U
}
; ~; I' h. c& h& L* w+ B" ` W2 G; W: O6 H: [3 d& a
private void swarmSetp() {( A4 n2 a$ {( Q+ z! @, `
list.addLast(new Agent(Id));2 ^: Q+ L, D ~
Id++;
9 z& {/ Q6 l, k# y1 ` }9 Y6 _- C" s! Q5 e7 P% n5 O
; y! ^ V a6 @; n8 t& c4 d
public Activity activateIn(Swarm context) {
# P$ Z$ Y9 J. R3 L: l) U super.activateIn(context);
/ [# G1 b- U. c3 n schedule.activateIn(this);
+ O$ o5 P7 D% X+ z, M! b$ j+ z return getActivity();
% K" v4 Z$ q, Z% |- ]% e* r }0 A' H/ x+ d2 R& j/ j. J7 }9 `9 R
9 ~5 i* R6 D2 F9 j# o
public static void main(String[] args) {$ L1 V3 T; g- ~6 i7 d
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* a" L, e. }- |/ N# u) C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( J$ w, T6 m9 B& Z L6 X" q- J, Z swarms.buildObjects();
8 F' m% x" i5 r4 r# k* J x' T/ ~ swarms.buildActions();: N" e$ o @+ t! i8 x5 u5 ~
swarms.activateIn(null).run();
6 a3 h1 [2 o$ p4 F# B5 @6 k) I }+ t) E8 P$ d8 j1 [) d! L' j% V
9 i4 K1 ~- {4 Q( Y} |
|