|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( |: R* t/ ?4 ?" I: M
A9 f+ T: F! v9 Q5 K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' ]7 O; L6 j$ I5 Y8 x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* G! W6 w# X0 m, j4 k9 }
swarm.SignatureNotFoundException
. V! K$ _* D- B; p1 u at swarm.Selector.<init>(Selector.java:76)
* v% O% c4 u ^7 J# g$ v) V at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" o% w& y. [. B0 l at ActionGroupDemo.main(ActionGroupDemo.java:67)
, M6 [! W4 E& W# Q! j+ i
5 x5 V) G, t% v) \2 ^# z2 v1 X3 _3 V ?1 Y6 r
import swarm.objectbase.SwarmImpl;3 ]4 ^/ ^* [* `" o
import swarm.objectbase.Swarm;
" b5 R& Y4 K) x, `9 E8 U; d/ s# Zimport swarm.activity.ScheduleImpl;
/ v( D- F1 R8 h' X. {6 @import swarm.activity.Activity;
' h2 k6 g# l* f% W/ i" `$ oimport swarm.activity.ActionGroupImpl;
, m0 ~* i1 Q+ ~4 S! X' Y! Nimport swarm.collections.ListImpl;
) X. F8 k& `4 `/ aimport swarm.defobj.Zone; ' o4 A& ]: _3 ?5 Y- w( n2 c
import swarm.Globals;
' Y, j) D' R( E! b. ~3 k* ximport swarm.Selector;6 b: H+ N* t q/ g% R. k
import swarm.activity.ActionGroup; % n. ^: P! H6 V! F) V4 O4 T, ?
class Agent {$ e7 R9 K) j& B. W: w
char id;2 Z! R0 r6 X4 B- E
7 N& k3 F8 w* B! E4 g( {' L; @
Agent(char id) {
! S. X6 D1 ?# a( F this.id = id;
0 v# {9 v8 o8 N/ q1 `* l9 s$ B" | }$ I! V% e3 ]' `2 v. ]: x
* L U7 _* j. {6 b9 ~( V6 _9 G
public void agentStep() {' V5 G0 ^' O+ J0 e. `
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 W3 ]* X- i$ c }
* v# U% a. i8 s! B: d) D}
0 n( l1 v9 |' |3 h6 j1 b; A; a0 b) M8 J+ W- e7 k* J! t, g8 j$ U
public class ActionGroupDemo extends SwarmImpl {
' k4 U$ G C4 _# V% T ScheduleImpl schedule;& C' W V6 U6 v/ m
ActionGroupImpl actionGroup;! s5 s' k3 o. z4 t% l) [& [/ h
ListImpl list;
9 C+ r2 V) F/ S+ S- s+ n8 @$ Y4 Y char Id = 'a';" o% v+ ~ B- A8 f: P. I+ ^1 p6 M
9 s) ] @) }' c$ d ActionGroupDemo(Zone aZone) {: N* w: M% s+ P3 i" V
super(aZone);# h) |" B3 A: ?# J0 E6 |. r
list = new ListImpl(aZone);
5 _6 r! W$ v% M* X swarmSetp();
$ U* O7 a E6 `2 E: c! {. W actionGroup = new ActionGroupImpl(aZone);
. |2 E6 Q- J) Y- J% a schedule = new ScheduleImpl(aZone);. M3 T3 ]8 b: z3 ]& Q
try { W4 O4 T1 ~/ V9 c+ [% K" D
Selector agentSel = new Selector(Agent.class, "agentStep", false);) z, ]" {( C' r% `& D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ w H7 U0 T" ?6 B3 s/ A$ ^ n- w
?5 u- R0 R, N6 l7 y" z actionGroup.createActionForEach$message(list, agentSel);
, D3 N, }/ }, i, E actionGroup.createActionTo$message(this, swarmSel);
* O R2 E+ F# z% B7 I, d schedule.at$createAction(0, actionGroup);
( _' L' D/ P3 ^6 b0 ~ schedule.at$createAction(1, actionGroup);
2 @5 X5 e1 t2 j schedule.at$createAction(2, actionGroup);
7 X, Y. Q& Y5 z" e
+ s! E; A( v& W3 a } catch (Exception e) {
* ^2 B# L* T- E& o6 w! L2 T e.printStackTrace(System.err);
r1 G) R% c( U O, z //System.out.println(e);
a1 h# B! k; c" [% c) O M7 U+ f System.exit(1);6 t( L- Z% B9 q
}
2 Q; X1 ?1 T. S" G' u# q6 X% y$ D0 L4 I; j+ x# [; b2 J, D8 _
) L$ \" A" T. u
}
5 ]' `8 v+ A! Y) _) x8 j( S8 Z/ J! N& m l8 P
private void swarmSetp() {3 b: s" I8 U" V: P& h! I" f
list.addLast(new Agent(Id));
1 F6 f& ~9 z# W! _; i4 o. S- A- k Id++;
- ?% o! |" r1 j5 J }* N) \- l) [" X1 H
& {, [6 E/ K+ B
public Activity activateIn(Swarm context) {
8 R" A" C* z. A+ e$ H super.activateIn(context);
; D/ R- d L8 X# e3 G# w. |. Q8 o$ N' g schedule.activateIn(this);
+ O* e5 x2 {4 G% h return getActivity();( E7 x- J* [) M
}5 a0 \) j1 c$ m/ Y1 O
* B+ ~ u0 j) |& ~; q% w8 z5 ?
public static void main(String[] args) {
( ]0 r5 a$ c2 m3 O; B, G9 g Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: n$ e3 A0 S- b5 H8 B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( t5 y7 y) P! r2 s9 L4 ]
swarms.buildObjects();
; N( |1 j/ E# X! ^2 z/ w# Y swarms.buildActions();
1 q4 U3 Z0 Q/ f1 l; L% h; y swarms.activateIn(null).run();- ]7 B, C1 y$ i# E% w3 S) W0 _+ \. O+ A
}3 \% P3 W. o6 u! f* q
' y! A7 G2 s: w, R
} |
|