|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / c3 `. ~' L; w$ l" n2 |- `
- b7 L1 }0 y& @$ l! B" T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 ?/ n% x3 J# a/ \$ f n$ {! V5 J9 _" L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' j% e" i. r: }' ^8 Q+ Y1 {swarm.SignatureNotFoundException
' q5 {- u |; g8 N1 c1 x9 G7 v# @6 h at swarm.Selector.<init>(Selector.java:76)
( P" P+ I5 f4 _- v3 F% L$ k at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- m# j- B8 V* l7 h$ Q2 |/ ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. M9 W R9 l& y: J
8 _ Z3 @! k6 G; b. b
9 `6 w1 N7 E; G4 u1 Nimport swarm.objectbase.SwarmImpl;2 U- A5 u7 X& j# E/ ^
import swarm.objectbase.Swarm;" ~7 B f0 z/ I9 B1 y* N7 K
import swarm.activity.ScheduleImpl;! ` z3 s8 t+ p( w
import swarm.activity.Activity;$ C- \) J( G2 l
import swarm.activity.ActionGroupImpl;
l# V' _: G3 f# Oimport swarm.collections.ListImpl;7 Q% H6 K# {/ P7 k) z- i6 i1 o+ J" A3 q8 M
import swarm.defobj.Zone;
. a7 q" ?( \3 z( R2 U$ Rimport swarm.Globals;
4 b; i- E5 C9 D4 Yimport swarm.Selector;( ?9 q. g; o$ R$ e* C
import swarm.activity.ActionGroup; & I# V" K, `1 ~: e
class Agent {- H W1 Z3 }; i* |2 @
char id;
5 j4 Q" R; W9 _) X4 U- Y' y" Y" j" c3 W8 T6 D* H
Agent(char id) {
% I5 R" h6 d' R1 x this.id = id;
) ^& O9 J: s- y& \+ { }
& Z0 Y+ U1 t# i0 K* Q$ @ w
% D; @- w' [' ?% s" ?! ]- H, r public void agentStep() {1 c5 @- `" e8 _5 Y
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ L" w* f( j# N6 U# t t8 o& K/ V7 ? }
/ v# Q3 p" A7 ^4 B}- Y! e$ c+ ]& \) _* C/ f
, | ^+ ~/ {2 R U I- X0 jpublic class ActionGroupDemo extends SwarmImpl {
- L% M, _# D( @4 c* U ScheduleImpl schedule;' T' X+ T1 V1 n( f4 g2 O! u
ActionGroupImpl actionGroup;
3 {( D2 j$ M* X J8 u# L ListImpl list;
4 l! d4 ^7 \- C) ` char Id = 'a';
; b r! K! L; `5 o' M, _9 [* Z% B" b- {% D9 \9 C
ActionGroupDemo(Zone aZone) {- K. e8 n9 Z9 I9 s0 m0 z! f
super(aZone); M+ a' [" X# K. ]/ h+ @5 w3 h8 S
list = new ListImpl(aZone);
9 N& [* b/ l0 w0 \ swarmSetp();% }1 j" T/ @2 q0 R
actionGroup = new ActionGroupImpl(aZone);
8 I' ]* c) Y9 |0 g" ? schedule = new ScheduleImpl(aZone);! P$ d8 p, c$ T, T) T, S& o1 t! w& P
try {
" t' n/ y: j% ]( K* W Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ R9 X D) ~8 _3 @8 E3 G4 J6 I Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& i( F/ }1 a! m' n( D% I: w Q* B
% p F% N$ i* o actionGroup.createActionForEach$message(list, agentSel);
0 | s7 ]1 N3 L F actionGroup.createActionTo$message(this, swarmSel);
+ E* @$ M m* v9 A+ q schedule.at$createAction(0, actionGroup);
' B {# Y! ?' ]6 s+ ^+ H V schedule.at$createAction(1, actionGroup);
2 o! g' K0 I% t; C" k# G" T4 u" _ schedule.at$createAction(2, actionGroup);7 ^: K/ l) x. J( s* V$ y
0 L7 M' H8 w" Z4 z9 Z1 j } catch (Exception e) {1 E$ O$ `. |. N% V! K# m+ k) f
e.printStackTrace(System.err);! J- [- c% I+ T8 T$ M) G, ^
//System.out.println(e);' T2 k% t" Y5 _+ E- v) M
System.exit(1);
6 z% w, q- y$ l: z }6 ^( _4 i9 ?# w" v& U
8 M+ f8 @& Z+ b) T
7 }, i/ d* E& A2 z9 H$ K8 k }+ h' r) @+ @; v# s1 |8 \0 i5 E/ Q
0 C3 x7 @$ J) i
private void swarmSetp() {
5 X% T# s# F2 {& `( d# p, M) h9 j list.addLast(new Agent(Id));
3 E; y3 _/ v5 F4 {! u% o Id++;+ W R% u& \' O7 `
}
4 t2 m: ?1 r$ u- j6 i0 h& G4 v7 D# W+ X; I7 ~( |: F
public Activity activateIn(Swarm context) {
H& j) \9 s5 n0 \; l- Z9 e super.activateIn(context);
$ ]3 f% y$ B- h8 B1 F; A% E% _ schedule.activateIn(this); K7 ]& t/ i) W1 b% e
return getActivity();
% l: u9 G Q+ a) B3 s }
" [+ }" o$ C3 X' n) P# q2 k# f7 Q
9 b! b4 V% P* r* y: n) y public static void main(String[] args) {
6 _( r% Y+ i5 k- s- d" K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) c [8 G- B2 k& m1 c# _- u9 a$ p! w' M2 p2 ?
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' P Q" `& m9 G @ swarms.buildObjects();
# E4 `. J: A7 G9 V2 F( D: T swarms.buildActions();4 W* X+ K ^2 e) N
swarms.activateIn(null).run();/ z% A/ H: o) b- t: g
}5 P1 o7 l1 H* G0 T1 c8 l/ N+ P
' s6 u/ U( V/ E, C7 ?# d
} |
|