|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 u* {8 x4 p( E/ _1 N1 n' j" \) C4 Q/ d0 @4 ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. v: M c- N0 X: H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! z" G8 k( Y* Z; E# E9 m9 Pswarm.SignatureNotFoundException
6 j( B3 r4 L. { at swarm.Selector.<init>(Selector.java:76)7 Q1 S+ _ b/ D/ G, C. M* J" z' L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" m( r! G4 X% F5 q, L at ActionGroupDemo.main(ActionGroupDemo.java:67)
. p6 D \/ a: l5 [1 H2 m2 J
9 A- p2 |5 w q+ \0 w% p. s* N! m
import swarm.objectbase.SwarmImpl;: ]8 R6 ^3 l s
import swarm.objectbase.Swarm;" F9 k, v, V: Q* E, o
import swarm.activity.ScheduleImpl;5 j% H4 X* U* ]5 {8 j5 \0 A5 ~
import swarm.activity.Activity;
" y; t# W X# J% `5 u i( k& } N0 Wimport swarm.activity.ActionGroupImpl;8 C1 \3 t* W/ w' W
import swarm.collections.ListImpl;
( C+ z6 Z* l% \import swarm.defobj.Zone;
3 L* q$ L1 }9 A9 pimport swarm.Globals;! [ f: M1 `1 G x* ]/ g( R
import swarm.Selector;. n) q- h* k5 E1 o! m" b) U/ l
import swarm.activity.ActionGroup; , E+ E0 R. z+ ], u8 J4 H/ P
class Agent {
; M8 z) r) c0 o" Z3 }# v1 g char id;
& b$ }/ R! Z5 C8 n! ^5 L. r! F9 y$ ]9 s' x
Agent(char id) {6 U3 A2 A/ J% b0 M/ }
this.id = id;1 J( r: R# C0 q5 L. m& ?0 T1 }
} f( e) N& m7 {7 H- x5 W
! A! S, K; _. ?$ ~/ N! t* X public void agentStep() {
9 s3 W* W8 n. a7 {9 |0 I/ p. A) I* L System.out.println(id + ":" + Globals.env.getCurrentTime());
6 I. {, F& F0 U) F }( Z h; @ R9 O1 h% n2 I, Q
}8 O3 a8 x" y' f3 W: U, l$ E
: G+ F3 V" |/ g( r* q
public class ActionGroupDemo extends SwarmImpl {1 e6 K. o4 B! |$ P; m) f/ V
ScheduleImpl schedule;; C( ~( F$ M |$ U. F( F
ActionGroupImpl actionGroup;
* y/ {2 d6 S! N5 j0 I C ListImpl list;3 T, M* x0 r7 i# q' T8 j
char Id = 'a';: @, b, v, J4 V& Y9 a
; x& f; F5 h3 [7 ~0 I/ h: E7 \ ActionGroupDemo(Zone aZone) {
* V5 o% Y8 J1 l. v' { Y2 I7 _ super(aZone);
! q9 @3 x3 ]0 h% {1 X' O; |1 r# w) \ list = new ListImpl(aZone);
( U, \+ V6 t" F6 h* U0 ^$ ? U swarmSetp();- _4 Y, d4 e: Z X( t; Y
actionGroup = new ActionGroupImpl(aZone);
_2 s$ n% o- m2 u0 N3 L schedule = new ScheduleImpl(aZone);8 a7 V2 `, M4 C7 p+ C; e
try {) S5 M. E( P( \1 h. Z/ l) e) F8 K
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ L5 J7 h D9 i# ]7 E5 @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" D0 p$ _* Q( @' K. q
; W; }# a: @) j0 r& O
actionGroup.createActionForEach$message(list, agentSel);$ F+ e& M% l$ _# M4 ^2 X+ s
actionGroup.createActionTo$message(this, swarmSel);
* R$ w7 d; K1 p% E' Q6 w8 |/ E% O schedule.at$createAction(0, actionGroup);
3 s( q; _9 f: e7 M* f+ p schedule.at$createAction(1, actionGroup);3 L- Q" J: Y6 M! e1 n8 V
schedule.at$createAction(2, actionGroup);
, y! ?1 g( d% w, W0 C) B) s/ A; k" E: N b: i( I4 w/ n
} catch (Exception e) {2 |# n* p- ~" a* R+ Z% n( e+ s) g! F
e.printStackTrace(System.err);
6 h' e) j9 ]4 \- T: m9 T //System.out.println(e);2 J' u7 f; v2 g& x
System.exit(1);. Q0 t9 `: W: C9 q5 r H8 V/ c8 E% l
}/ ]+ ^9 \% X9 U' e6 {. L4 l
7 t* m- D8 G+ d; t9 l
# p8 P! }# ]. H- M5 l4 O' _ }
& w9 Q) h4 _" w/ J3 M4 M6 x) d2 v9 |: S* C9 r1 x4 @$ `. Z
private void swarmSetp() {$ ~ v3 I8 U! T
list.addLast(new Agent(Id));
" s& `/ ~7 l. V9 C. k. d Id++;
( u, g' Z( b. E8 D4 i r& m }% B8 D/ R; Y( n. F/ e) s* e7 Y
* J: p1 ~ B- N5 C) `
public Activity activateIn(Swarm context) {$ b+ j$ k+ K$ \( B$ M+ W" f! T+ ]' o
super.activateIn(context);, P. X6 E; R; P; e1 Z: [
schedule.activateIn(this);
4 e" s- L# O, D: d' Y return getActivity();3 m/ c& q% v+ n6 I- f z
}( H2 M: [0 t3 d, B9 c
! j' Y" o' Z7 `0 _6 y2 d5 W+ O public static void main(String[] args) {
% ]$ w# [3 z/ |& a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 F9 T7 V( f" f9 K6 b: u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% ?' T- ~: M/ F; S( I N swarms.buildObjects();6 W- V3 @1 M8 K i
swarms.buildActions();
: w# I: ]( g- I0 D. P, E swarms.activateIn(null).run();
5 Y$ _2 y5 z8 _5 v- @ }+ M: e- u8 T X C9 u5 H
( Q* i6 A5 X5 t0 m# ~} |
|