|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; h4 i7 p% @3 R; k; I
6 b$ ^$ S+ q! A# L, S' L1 x: F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, V7 j- Q; ^& e3 b3 q% i7 ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
B+ ^1 r. m! bswarm.SignatureNotFoundException
7 G6 B: @( T8 K. |# v& h at swarm.Selector.<init>(Selector.java:76)5 k0 f# B3 y' ^+ y0 M/ x+ ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ t$ P) Y" @: \7 m9 w% j
at ActionGroupDemo.main(ActionGroupDemo.java:67)" F) U9 U5 G0 V s$ S+ I
( \3 |/ B- D+ l% o
* j/ n, a$ a8 }8 F+ l$ t: R0 v9 r0 Fimport swarm.objectbase.SwarmImpl;
K/ q6 m2 K, K' Qimport swarm.objectbase.Swarm;
$ P' d& G- p/ }; T$ j) l6 Vimport swarm.activity.ScheduleImpl;6 G( D1 g4 p- P, Z: ^# |9 g
import swarm.activity.Activity;) l/ v) G! B6 J8 x8 h1 o" I: B
import swarm.activity.ActionGroupImpl;
: S+ A5 x a% Vimport swarm.collections.ListImpl;
Y4 j: P+ H9 O J; p: t) z3 f) ximport swarm.defobj.Zone;
: v0 q4 B7 F( i9 Mimport swarm.Globals;
( i% G5 ~5 h7 H- k6 {4 d; e1 j- Jimport swarm.Selector;! ~& D# |) J: P$ C
import swarm.activity.ActionGroup; 8 E( o' d3 V! d! A2 o
class Agent {. O h8 A% ^; ]1 _( p. [4 S$ M8 ?5 R
char id;5 D/ a3 O: H) [* |
0 F1 ?# O/ {$ i" H
Agent(char id) {
& @9 Q% [/ n- V0 H$ {, S6 R) [- [5 q3 i this.id = id;
- _/ g% x, B7 r, I4 B8 l/ _9 J }
* T `3 f# |8 s" X1 P, p
. u+ B/ }6 ^/ Y- S8 Z2 H" ^* t5 D6 { public void agentStep() {
( I% p+ z6 J9 }1 W* L6 Q9 F System.out.println(id + ":" + Globals.env.getCurrentTime());* g- c- M) ]" d6 [* [( W4 {
}; `( k+ Q% R E! d
}$ N8 v' I& c) x6 Q2 r m6 Z8 g1 [
. u5 E2 L' _; ?. W! z8 c1 D( C. d
public class ActionGroupDemo extends SwarmImpl {
& w, L6 s# B) b# j" t9 U4 u7 j ScheduleImpl schedule;
- H$ k& T4 I8 Q7 S2 j9 S ActionGroupImpl actionGroup;6 g7 l$ {3 [: n+ D! P7 _% t
ListImpl list;
% C) N( H/ w4 t4 }. Y9 \ char Id = 'a';
& [9 n/ _8 k5 M) p" G- e) M3 S( R5 `3 ?
ActionGroupDemo(Zone aZone) {
6 m2 r |0 H6 K& P$ _& }1 N super(aZone);
" }6 s M8 I- C* W9 k( I list = new ListImpl(aZone);
/ X/ _1 ^8 t: u* u2 E swarmSetp();
0 q( X% t# M- N! S actionGroup = new ActionGroupImpl(aZone);
+ }' S- P. {+ @) f schedule = new ScheduleImpl(aZone);
3 |8 o2 v! j: a! o try {7 @' d I9 b) ]. ]: |" j! _0 b
Selector agentSel = new Selector(Agent.class, "agentStep", false); e! [; H. N b0 U- w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& q3 ]" k, n5 `0 s
8 l! n& U0 C( L6 | actionGroup.createActionForEach$message(list, agentSel);: M: T1 d; y8 i3 k
actionGroup.createActionTo$message(this, swarmSel);
; J% i! N1 H& }" P$ S" N( m schedule.at$createAction(0, actionGroup);
9 V8 A4 B8 E0 q. i schedule.at$createAction(1, actionGroup);( [5 n+ [' ?2 k& C5 S* d
schedule.at$createAction(2, actionGroup);
; p. {! p$ J0 H# X5 O8 `% s3 l/ H0 B% _! D' T! T
} catch (Exception e) {
7 J" o' H* M5 D/ Q$ Y e.printStackTrace(System.err);
% Y; X2 o, @% `" L) D //System.out.println(e);
; w% p5 r: V3 \" p$ n( ?2 w System.exit(1);
. ?" i) R: f2 Q% `8 i }
) I% z2 f9 W3 W- R+ ^' q8 B
8 E! u1 ~3 h; U" S: I. E% a6 M9 R) Y
}
+ S# b% H3 S2 T! I9 e
5 S' H# v% y A R" m private void swarmSetp() {0 u0 g9 ^0 ~- N! e0 j
list.addLast(new Agent(Id));* b0 C% y( }) L6 @; r5 T! z. i6 q$ A
Id++;! v, D3 r5 O6 u
}
) i8 I) A e! R" Y) M' i3 ?" c7 @# \. U5 W6 ]# Z& A( l0 Z. s7 _
public Activity activateIn(Swarm context) {
3 b" y' Q# V X4 A6 [ super.activateIn(context);
; h( P: O2 Z6 I ^3 @ schedule.activateIn(this);* h( u2 u. M5 j! {, d. b" q
return getActivity();4 E& [# c1 G4 [) B+ N3 v
}. n( l6 r: `0 X: E! n/ e$ `
1 r! ^2 h/ \0 D; }! S public static void main(String[] args) {8 k: B. U) g% M9 C
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! b! q2 l' z9 | Z. s; a. f: [0 a% O, O Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* y m% ?' h3 m' [8 q, l- |1 M' j4 u swarms.buildObjects();/ @6 |; D$ b M' T0 B A8 z2 m
swarms.buildActions();
% W* W, s4 ?3 [" j# S swarms.activateIn(null).run();! }* V9 _. E: ^ [* u
}5 X. @# W) p3 a
& ~) p* |% M# W9 ^$ P3 L} |
|