|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( a/ O5 { M# c( ~1 F6 l) R
/ E N6 U5 }# `5 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ m7 b# G. `: h+ f3 |) `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." x8 w' u' R8 J* J& ?4 F6 w- E
swarm.SignatureNotFoundException8 h& H) a; w" x( T$ _
at swarm.Selector.<init>(Selector.java:76)# Q; f2 a2 L7 ^7 }: N r2 e
at ActionGroupDemo.<init>(ActionGroupDemo.java:37). t! n& o; r' N3 E8 z. |/ I% i
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- v" e* `: Y6 s
2 c+ v" |' H' {3 `9 \( G4 l4 W) c/ ~* f+ D2 E J- s3 `
import swarm.objectbase.SwarmImpl;# W6 R# d2 E# ?" M) |
import swarm.objectbase.Swarm;
p) N. o8 V4 r" g" j& x$ ~/ |5 C" I/ [import swarm.activity.ScheduleImpl;0 f5 x$ e( c' {8 A. M6 T
import swarm.activity.Activity;
; X( U/ c4 C% Aimport swarm.activity.ActionGroupImpl;, ~7 c* J/ v# V2 C$ ?( c
import swarm.collections.ListImpl;
0 C2 F" y) e/ Timport swarm.defobj.Zone;
) A. v( k4 ~8 v3 a& Eimport swarm.Globals;4 m, U% ]- y6 z" r9 r: S1 O
import swarm.Selector;
- J9 f2 s5 M- {, B8 V& Kimport swarm.activity.ActionGroup;
% A/ o. A& w, [3 ]: J- c" @class Agent {
& f8 s2 A9 O: N1 X5 S, V5 O char id;
$ l/ ^( F# V/ u6 Q8 [: V! S8 d0 j3 T$ _6 G& f1 c) t
Agent(char id) {) H& L) H1 i' i
this.id = id;
4 b4 V: ?' P o3 _, R& Z' R5 n7 Z% v }) p8 G/ f( \: U2 h* D5 K
" ^- F0 J1 r: Q0 q% A
public void agentStep() {% r g" J) d+ J
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 _/ B& W+ z* w8 ^% f( T2 o" s% ]# P }
- s* b& E, A# H}( P' G+ m/ E5 }/ {
( l0 r7 T$ W: ]3 y d1 `8 s5 ?8 X) Q6 [public class ActionGroupDemo extends SwarmImpl {
; b; h8 O+ f5 H' \7 u: t1 ?* E U ScheduleImpl schedule;- b+ t% U' P! T7 K/ F- |
ActionGroupImpl actionGroup;
N" ]1 |2 y9 E K" z6 ~# _ ListImpl list;
4 O7 `9 {( |: |! F3 Y4 ]' Z3 f char Id = 'a';
/ Q& W0 p h- X" b2 m9 g3 `7 v$ U: R+ N1 H
ActionGroupDemo(Zone aZone) {
% b1 l' y O& s$ B' R- A) D3 `6 k- ] super(aZone);
4 J( Q" f- G. D$ _ list = new ListImpl(aZone);
z- h Z' d& l* y8 I. Y0 s swarmSetp();
; O) C0 c$ X) o; t' ] actionGroup = new ActionGroupImpl(aZone);6 V$ m- o8 r5 U( L2 n: b( c
schedule = new ScheduleImpl(aZone);5 e, L& A; n3 V' O* a
try {
+ q0 @/ V* j& X1 k# U Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 x+ s" f3 {/ [4 u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 [) F5 t; Y& H w5 s
; P$ _, m2 H( F; s% R& c
actionGroup.createActionForEach$message(list, agentSel);
2 N& n% X; Z$ k+ x0 X6 C9 m actionGroup.createActionTo$message(this, swarmSel);: z' x/ ] {# i; O- B* @9 o* O& ?
schedule.at$createAction(0, actionGroup);" }0 @& K# H0 ?5 } L/ M
schedule.at$createAction(1, actionGroup);4 S2 p; M6 _) O! ^
schedule.at$createAction(2, actionGroup);9 @1 j- w, l5 m0 k" B. p
! `; u& K6 v* H/ T8 m- s } catch (Exception e) {: o9 M) o% n3 e2 o$ J8 ~" u6 q7 W
e.printStackTrace(System.err);
. T7 J# @ f/ R& T8 { //System.out.println(e);/ M9 n+ F+ g7 ?
System.exit(1);9 l8 N0 N: h7 N: e
}
8 [5 O9 {5 z# b ~. E! M2 y3 d: [, U8 E j1 S9 I
0 P- t& J3 e" a! |5 G* `. r: ^2 Z) X7 E4 d }
4 a! U9 i+ K% [, e8 s7 N1 i+ Z) H. S$ Q H2 _ _* T5 m
private void swarmSetp() {
; u- y4 Q e, Y9 u, L+ {5 ^ list.addLast(new Agent(Id));0 Z# j# [- v' m
Id++;( m5 t$ Y7 b8 Y& c |
}
# n# v' Q8 g, y* J7 V$ c% O: c: _3 X% e& w& e3 T* Z
public Activity activateIn(Swarm context) {
0 N0 j! I: B; @9 t, R super.activateIn(context);
+ |/ d- O$ n2 b' {7 O6 y# W- \+ f schedule.activateIn(this);
( z6 }) d- d5 \! p" o6 l return getActivity();
& C+ U4 @2 M+ E$ r8 _7 _6 } }
( `& t/ y' `/ h. x6 |$ A! i
: J2 V" v- p2 g' k public static void main(String[] args) {
+ r- G; R# L. h. G. { Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: x* t* V& I$ d9 O9 U/ S" p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& x) @, U9 `+ y9 ^ w& G' b& A
swarms.buildObjects();+ \) X8 H, f0 L2 E0 o
swarms.buildActions();
4 n0 W9 F$ p" n9 w0 l) w" p1 N& c z swarms.activateIn(null).run();5 t+ d7 [5 I8 L) ?
}
# S" _8 J* A' b" L6 ~" I
u8 U9 n6 g, F! [0 R8 d( O" Y* k} |
|