|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% g& G# Z. R( W1 {7 y9 _
" i5 L% d3 |5 L9 X/ z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* ~ h( f. n2 s' e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 z! m* r6 G7 q `" S
swarm.SignatureNotFoundException' ]8 G3 u: D8 g' c8 z: \3 M
at swarm.Selector.<init>(Selector.java:76)
0 e2 g: U3 K1 C! B7 o at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 K. h5 e; D& q. A1 D# A at ActionGroupDemo.main(ActionGroupDemo.java:67)
, ^6 u {$ M: }1 k/ j/ R1 L" _* L
2 c' k) {: N8 T) G8 N6 s: S8 I9 P) b7 p. K) o! x
import swarm.objectbase.SwarmImpl;3 b; `* m9 m2 ?* @; U4 p
import swarm.objectbase.Swarm; i6 m/ i9 x3 Q& b
import swarm.activity.ScheduleImpl;
8 r, ?/ K( i4 v2 ]' H) @import swarm.activity.Activity;
1 H1 _/ p3 P1 \: Q5 ^, S1 ximport swarm.activity.ActionGroupImpl;8 M f; V5 V3 {2 S# C) x) Q
import swarm.collections.ListImpl;/ v4 F) e0 z& q0 z$ W, ?1 b: b
import swarm.defobj.Zone;
% R. G6 n: ~! P, v0 y2 t/ x0 oimport swarm.Globals;
" u5 ]0 q- _2 \: F: pimport swarm.Selector;
; @/ @" W7 f' `$ qimport swarm.activity.ActionGroup;
2 @2 A% o, s3 B" R w" E Cclass Agent {9 l) l. ]9 O4 [, }/ s
char id;: [, q+ ?( N. g
7 k1 l# \. p x* |6 ]+ @) L2 V: N3 F
Agent(char id) {% @* D% D; j( Y* l9 V
this.id = id;
5 ^& _7 a) {& n& E }
# g! t! y0 Q7 ?( {! W& y ^- Z& s* \+ G# S4 J+ o; |% z% T
public void agentStep() {
3 o) S2 Z Y0 Q System.out.println(id + ":" + Globals.env.getCurrentTime());
! v' ]. a& W9 A }
1 V% y: @3 R) T: ` a}8 V) h; w7 K+ t; d5 b
+ O) L5 u0 o/ [. G) }
public class ActionGroupDemo extends SwarmImpl {
& s( Z+ F3 u- N( b; u5 a ScheduleImpl schedule;
5 Z! O$ d" H: l4 R. x# Z. c ActionGroupImpl actionGroup;
+ u- M/ B# G0 ^# Y6 V ListImpl list;
: J |, m B- v( F$ W2 c char Id = 'a';6 u5 G, ?+ y" a: V |2 t1 @5 f
) I- J* `! r- P1 f ActionGroupDemo(Zone aZone) {( v& C$ q# k7 C A" \- j( V. T
super(aZone);
* L# l& ?& J" t- i! ? list = new ListImpl(aZone);; [" K: A0 {5 \+ h* ` f
swarmSetp();
( k; K) v8 D0 {4 g) U3 o& t actionGroup = new ActionGroupImpl(aZone);
1 ^! ^$ Q8 O$ Y( A2 e' F schedule = new ScheduleImpl(aZone);
3 x- {0 z9 X8 H6 e9 n try {
6 {. M. Z! H) _5 K8 q D Selector agentSel = new Selector(Agent.class, "agentStep", false);( w- A! n* h5 o9 i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# Z, j! J$ I+ C$ S$ ~
& ^1 Q2 y$ N8 A# F: v: }" z actionGroup.createActionForEach$message(list, agentSel);
8 p1 _" ?& n7 R7 T* w: X6 k actionGroup.createActionTo$message(this, swarmSel);- e1 j& u7 I0 l1 O* [: t
schedule.at$createAction(0, actionGroup);. z1 b2 ?# V) f% Q9 F( W0 u
schedule.at$createAction(1, actionGroup);
/ I H5 s$ x' u schedule.at$createAction(2, actionGroup);; d/ ~4 e) L3 _5 x
5 v* x2 H/ A/ G# K/ a$ |. Y } catch (Exception e) {- T% R' E* H. e( ]5 I
e.printStackTrace(System.err);2 u1 f9 L* s: I* y" d
//System.out.println(e);
- H/ ^3 C! `( S2 D7 I5 C System.exit(1);
% {6 Y. x4 N6 c$ w6 z" I, n }; \8 v" x: t- K
9 I. F& {; C _" a8 O- U5 `. u) E6 J9 ?. A4 n. F* N4 ~# ^( e
}
0 S: ~* J3 u4 j( U- B& V' k9 Q# E1 z! |' Z
private void swarmSetp() {
( E# k9 y* D& M. V8 L, {" ~) f% J6 g list.addLast(new Agent(Id));
. o* W n3 k D" u- a9 [ Id++;9 E- f* t, a7 n S w+ a
}
- J: r9 U& ^" t5 k* s" e8 ^1 i; U p/ c( C1 T! A, R! V
public Activity activateIn(Swarm context) {
. G4 N1 H1 Q0 B( N/ ?7 ~ super.activateIn(context);2 k/ f8 I9 C1 C5 \ t2 P; |: C$ k
schedule.activateIn(this);# M) Y' E! E, k) A, G4 X
return getActivity();
; q+ N( r7 t( | }, ^/ U& B7 F p# [3 I# \
9 ]' K" O3 E/ U- H. w; I+ k
public static void main(String[] args) {3 G. s9 y: C7 |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# P3 E5 }0 R4 ` N& {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- J) v* m" h/ a5 N
swarms.buildObjects();7 X+ E% q6 E' J# L
swarms.buildActions();
( k! [# Z1 v6 ] s! e7 @' a. { swarms.activateIn(null).run();
- C! \: T) z. h# J. A2 P5 Q }" Y8 o( b" E; L
: |; C* O1 e( T% L} |
|