|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 i+ U; d- `. B- I2 @$ ~1 u
" W+ t' p: A3 i2 r) ?) p) E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 ~% m4 U: h& t3 W8 h x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 N6 }4 z. h( P' G" I
swarm.SignatureNotFoundException
- J2 T+ `8 k8 n5 b* v5 m4 b at swarm.Selector.<init>(Selector.java:76)# z2 D8 z# v! X3 F1 m* Q4 a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Z/ B# V; C& C
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- H/ h( ]$ I3 i F7 e; B9 @( h
0 [! m5 B$ h; o0 e, {* j, Y8 `7 I5 K- ^- a# f- p
import swarm.objectbase.SwarmImpl;
! i7 K6 E6 S) X A" nimport swarm.objectbase.Swarm;; }& w# _' G6 }% d( J
import swarm.activity.ScheduleImpl;
q1 X% b* a1 n& \- f4 qimport swarm.activity.Activity;
- X3 _4 f+ w/ Jimport swarm.activity.ActionGroupImpl;
8 M8 K8 h: k0 k" v; v( z# w Uimport swarm.collections.ListImpl;8 z: ?: Y0 g/ A1 t$ s8 Q3 `; n" w
import swarm.defobj.Zone; ( u {6 W- C$ p1 `7 w
import swarm.Globals;
& k% @7 E3 p% |# pimport swarm.Selector;, L) g9 B# e9 n; e$ f
import swarm.activity.ActionGroup; ( Q* ^+ e: R1 _4 j2 J
class Agent {
4 ~4 p* G% a C* N! o9 Y char id;
7 ?# F. N1 _% V- Q8 h3 L
7 Y- B% T2 A; U& n( |# u Agent(char id) {
/ d6 ]$ s1 [" _, `0 T this.id = id;0 t4 ^5 R" t) U& | N% _, V
}: _. | J1 z+ Q9 K# k) _" W% |
9 |/ ]" Z; t; Y
public void agentStep() {; E+ i6 P1 `, l3 e7 l0 L6 _/ f( N
System.out.println(id + ":" + Globals.env.getCurrentTime());2 T B2 P9 S0 H9 D
} H6 l0 @7 s4 D# d; R! q; H; @- [
}3 N2 X" g2 Q/ V, I+ G/ e
3 v% U. |7 w0 v7 C# `7 Z1 Z# k
public class ActionGroupDemo extends SwarmImpl {
& ]( j$ o& `5 v) u/ H) w% S ScheduleImpl schedule;4 C0 G9 Q. A g6 ?, @; |
ActionGroupImpl actionGroup;8 U; Q# W; P2 _( N7 j
ListImpl list;1 Z4 I% n- V& A& _4 B! F
char Id = 'a';3 X3 Z2 y6 P* f: j
% }2 k/ i q7 e2 _8 A ActionGroupDemo(Zone aZone) {" J' Q9 ]7 n' v3 t4 n J
super(aZone);0 ?% z& J2 W7 u- R. p) S
list = new ListImpl(aZone);
" `- Z0 v( x! E( \$ a swarmSetp();: t# }3 W4 f$ \" n& J
actionGroup = new ActionGroupImpl(aZone);
+ F' z p; G5 ~( { } schedule = new ScheduleImpl(aZone);7 `2 Y6 |9 c* M& ?. R
try {
% Q7 S4 o1 p* B3 @4 e Selector agentSel = new Selector(Agent.class, "agentStep", false);* |1 S/ h# |, E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 [* f c. A9 w. w( y# k
; R8 E, a' T; f7 A% g actionGroup.createActionForEach$message(list, agentSel);4 `5 A" O# E6 c% C2 P
actionGroup.createActionTo$message(this, swarmSel);7 w( I' L6 I2 ?! z! |
schedule.at$createAction(0, actionGroup);+ W h; e& T6 `- U
schedule.at$createAction(1, actionGroup);
7 A9 t$ z/ b: y/ P7 D schedule.at$createAction(2, actionGroup);1 y9 I+ W" w# [! A/ p0 [+ U9 w0 _
$ D* Z, f" |0 @/ |& R) L9 S } catch (Exception e) {
% s) I4 g7 I( _. B9 s- H' e e.printStackTrace(System.err);
( D9 b9 n* U; g8 @% U( @ //System.out.println(e);
+ f, v& {# k2 ^6 K, l, g System.exit(1);; S0 ?, [0 l% b' |0 |
}
- \4 \7 D9 s+ G" \5 p. ^7 q5 r* R$ h8 P$ {1 T3 |- |8 [
% }! v# j7 ?4 L+ L: Q
}
7 W. h7 Z( G6 F, j/ q+ v/ P
& }' w# r3 w! B7 v6 A9 S private void swarmSetp() {
" e6 G, f1 M, M list.addLast(new Agent(Id));. e Z. @: G( L7 ^/ {% e
Id++;; I" d" X1 u( B
}* X4 m( z! K& t
# L3 Q, K( s1 f7 ]6 v& n6 c% z4 o public Activity activateIn(Swarm context) {) ^, M4 j1 u2 |
super.activateIn(context);
4 o }1 l5 D- B schedule.activateIn(this);; B2 c# y! c, E9 I* z$ r E
return getActivity();- `, F+ ~. O# u2 n
}3 `" y# b3 p4 y6 w7 o
. B. H" @ }/ {; I public static void main(String[] args) {
% A7 S( A' g9 E$ u* J% i0 V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: Q! c8 i1 D$ @) ~- }& I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 M6 I6 d) {: P% R& h k swarms.buildObjects();
( k+ _& j/ W& O0 m+ l6 x8 p swarms.buildActions();: I$ e, C- s/ H4 ~' h
swarms.activateIn(null).run();- ?7 n0 g' o$ r T# O+ L4 Q5 Y
}
) k) f1 E4 H( v- y" V5 b; N9 \/ C* ^+ S" ~ D" S
} |
|