|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- u8 N' P3 j+ V3 W) r8 V& c8 K2 ^, s0 ^* r1 W% w- Z5 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, Y2 `( t' T1 T& j+ z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- ^2 c: }% C% `: R" R
swarm.SignatureNotFoundException
, K/ K" Z3 x- k) c% [ at swarm.Selector.<init>(Selector.java:76), z$ K; ^$ x# w6 P \4 ^( P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), e+ ~& Z2 @7 O; L7 `: P
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* _5 f6 p. s% u) z; Z0 Y
3 M+ J/ N' Q$ z
6 h9 h& S. W3 a6 Mimport swarm.objectbase.SwarmImpl;
& y: Z8 o5 Q; T5 Z9 Limport swarm.objectbase.Swarm; G- U# y) P# X2 a# Y+ ~+ I
import swarm.activity.ScheduleImpl;
! [) d8 J8 w% u8 Jimport swarm.activity.Activity;
6 Q4 I6 e2 v9 L8 E9 Y8 }import swarm.activity.ActionGroupImpl;" R7 b6 U$ I5 h# H9 e2 F
import swarm.collections.ListImpl;* {- Y) k8 B. @& i' P h
import swarm.defobj.Zone; : F& a" @1 s( E, k5 I
import swarm.Globals;
$ {6 }* l5 _: G( {6 s% |& Uimport swarm.Selector;# D# p$ F2 B5 p: M e0 p6 o
import swarm.activity.ActionGroup; ' G$ ~% t- F3 X* e
class Agent {
8 U: V( j% X* D3 R6 S char id;+ C1 Z2 w% m# |5 Y# y1 ]/ X7 h
8 j; U3 D; ~) F( \# R* d. G) ?
Agent(char id) {" u& S# o9 D7 `
this.id = id;- D& y+ l* w- x! w
}
( l4 z& b- n4 a7 \( ~3 I* {
M+ E( M9 A/ s) Z4 G2 K6 J public void agentStep() {
. M2 m$ _0 I3 V; h System.out.println(id + ":" + Globals.env.getCurrentTime());) B8 w9 c" j& S! l. n
}9 Q0 O) S! m9 p" Y- J3 b* r
}
$ k. ]1 ]7 N7 m% s1 r' `1 {; C5 e, ^8 j* t: n
public class ActionGroupDemo extends SwarmImpl {
x4 D, I* y* X ScheduleImpl schedule;) }4 z) [$ R1 H3 R( m7 \
ActionGroupImpl actionGroup;
" l* s& L( q: p& L1 Z ListImpl list;. W% i' C$ Y! W; [$ }3 l
char Id = 'a';( o$ F% U6 e- T' R
! u; q6 e( j: u. h B1 J7 S% Y! O ActionGroupDemo(Zone aZone) {
' O3 Q+ P2 \/ L: j- K6 J super(aZone);" [$ ^/ [0 m: c" U; r2 Y
list = new ListImpl(aZone);. M. A6 E5 q! H# X6 K# b# G
swarmSetp();
: R' N4 ?( y! d+ k2 j M( @ m actionGroup = new ActionGroupImpl(aZone);
: j) e/ K- X# S! l6 I' Q schedule = new ScheduleImpl(aZone);
7 N' V' L: A2 G% G8 ? try {
9 y" e1 z6 i8 V2 h9 e6 s Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 Z6 x. v8 I h4 }, @, U Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 w' @5 ]! ~+ ?% p5 a. q. l9 P
8 |$ M! |9 ?% I" h; i$ L3 f( c actionGroup.createActionForEach$message(list, agentSel);
$ i0 L( ^3 ?% b+ J actionGroup.createActionTo$message(this, swarmSel);0 g1 h ~4 e4 m* z' o9 Y
schedule.at$createAction(0, actionGroup);( M; e3 w0 U2 d
schedule.at$createAction(1, actionGroup);( G! y& N* D+ F1 h
schedule.at$createAction(2, actionGroup);
& D( j7 r. V: p; z) \/ _# O k: p1 P, M
} catch (Exception e) {7 F) m* N, Q5 q1 }& j0 K( U4 p: x$ F
e.printStackTrace(System.err);. h, ?, e0 T. G, E& U5 N
//System.out.println(e);/ c4 ~& e6 U4 F+ x. [
System.exit(1);
* E5 ~) W2 v2 \( z: C: F }
( F. _; q. u1 ^; P) b
$ n; P, Z" d* d
7 M8 d% e ?0 W9 i+ {) A' n }
1 H$ T, Z3 L+ U+ `/ H O: H+ S8 m. v A! m2 d' J# V& }) y
private void swarmSetp() {
+ t3 g1 P1 d" l list.addLast(new Agent(Id));; a t7 y2 J: v
Id++;' j% T3 I2 v; X) q
}
& g0 F% |' R5 K6 W) a2 U
7 Z- L9 P8 v9 T2 Q/ t- ~ public Activity activateIn(Swarm context) {
+ E9 J' H( ?) m: L super.activateIn(context);8 R- f: [# ~% g, _0 w
schedule.activateIn(this);
: S' f& ^9 L/ O2 P% i return getActivity();8 s. ~; `* e- O+ j% l6 i8 O/ e
}
3 b4 K6 K, B8 E' ?$ O4 o& M/ R( }1 ^9 q m# G9 X; v, o
public static void main(String[] args) {
* A. ]& D, m/ G0 R+ J# }/ Y4 X# |, E, ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 h8 h* s$ B9 y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 C1 Y" f2 b8 `) }5 o swarms.buildObjects();
$ N; u% [( i# P2 O swarms.buildActions();
* L+ j1 N; z; K: Q/ r. v swarms.activateIn(null).run();) w$ V( m! x, P6 J/ P
}
8 P$ V( e4 C3 |! F' r) ~! r5 |& x7 |
6 h; M6 `8 i7 J6 H} |
|