|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + S3 w, b+ X5 K* H9 s/ H
* Q6 P3 N6 x7 m6 V: u7 q% ]% u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! T/ j9 a% r0 K; W0 n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 @, ]$ {# a# kswarm.SignatureNotFoundException) B7 R; x/ x% o# B5 A# Y. z) h
at swarm.Selector.<init>(Selector.java:76)0 q* ^9 p& n, J/ K X A! E7 Y* G9 o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. o- ?6 x6 N5 V* l6 v! W at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ L6 n! s8 d' B1 Y( g
) c- C% s* j2 H/ H# L+ r' P
1 `8 T+ `; j) G; o! I& h; G$ Aimport swarm.objectbase.SwarmImpl;1 ?9 `" {1 H; Y- c/ x: v
import swarm.objectbase.Swarm;
. ^0 v8 H- X1 limport swarm.activity.ScheduleImpl;
) J6 N' [; G0 V& c$ {" m7 ^import swarm.activity.Activity;5 |/ i" c6 F7 z
import swarm.activity.ActionGroupImpl;
, }$ E- M& D8 f. aimport swarm.collections.ListImpl;
; d$ N! L5 o5 V# Fimport swarm.defobj.Zone;
7 D( X. z* Z! b/ ?import swarm.Globals;
- C: Q4 g( [6 Cimport swarm.Selector;% r! N" z( w) b- Y r7 g2 }
import swarm.activity.ActionGroup; 5 y% ^! }8 P$ N; r) |/ s
class Agent { m/ ~" h6 \8 G7 D# F1 }; t/ A
char id;$ d3 {5 m+ T7 J& m+ o) Q& F0 P
3 X d2 }! d+ I0 d
Agent(char id) {- l. V& i5 M4 q# W1 H( G
this.id = id;! J6 m3 @2 ~" {& I1 x' T D2 a
}
; v W# K. m. `$ S, B7 c5 v8 U$ h& n1 ]5 W- W
public void agentStep() {/ G' E" y6 \1 k4 T
System.out.println(id + ":" + Globals.env.getCurrentTime());
* t" I8 X3 N$ W1 D }
- N$ P/ l- @+ s. m* n}( Y, M' I4 Y7 J5 X4 r1 Q7 v
& W- {" A% C5 q" {
public class ActionGroupDemo extends SwarmImpl {; n0 |) l0 G$ E
ScheduleImpl schedule;3 V/ Q3 {" i7 x7 i$ n! W! F8 g# ~
ActionGroupImpl actionGroup;. x( Q# x, f& ~1 g
ListImpl list;. p- _& W2 x4 M& d" n/ a. T3 d
char Id = 'a';( f- r7 e( ^$ n8 u
: [6 x* Q0 Y% t1 e6 p
ActionGroupDemo(Zone aZone) {( P* r* F8 y# e" A* j5 N C+ V
super(aZone);
9 `3 |% `. L* J2 a( W list = new ListImpl(aZone);
3 ?6 t* G4 Z- f7 U swarmSetp();! y: P2 d5 b) D Z
actionGroup = new ActionGroupImpl(aZone);, H; y# ` U( X! i3 E. R. T/ T
schedule = new ScheduleImpl(aZone);
. f1 K9 Y2 D i" J' r8 t; d+ F7 q try {6 c4 w$ o; E( u y* u, G, ]4 \
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 _% ^+ D# _, c4 \ q4 V8 g
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# V6 z0 {) i) t7 I7 F: O9 i
5 f% A% f3 C6 ^! X actionGroup.createActionForEach$message(list, agentSel);" I5 h) |: b) z+ @2 j, y( T/ u
actionGroup.createActionTo$message(this, swarmSel);
t3 L u' M( V9 j3 ?( E" ^2 E0 u! E schedule.at$createAction(0, actionGroup);$ ~4 N) E/ W1 `0 A$ G/ y$ N0 s
schedule.at$createAction(1, actionGroup);' e4 v5 y" H L
schedule.at$createAction(2, actionGroup);
3 y9 U* g* O6 Y- w Q$ Z, [" m ~; E3 Q( s
} catch (Exception e) {
; j5 s5 I2 n3 B4 |3 I e.printStackTrace(System.err);, A* n2 J6 }: E1 U
//System.out.println(e);
- N1 X( r7 y7 E System.exit(1);% f) e, n. {$ r: |; v( P
}
& w# p9 F3 m7 w6 c6 i
5 p9 c+ |) _3 q7 Y! ~
; _5 P0 x; M- ~ }5 _0 P: Y0 q( y1 m& P8 x3 T- t" C
! G) B* l6 ]/ |: _
private void swarmSetp() {( T; X/ D. G7 b5 ^+ o
list.addLast(new Agent(Id));
. ?. s1 i ?6 f; ?9 G+ @ Id++;
5 V7 v4 \' j% X" I0 ~. O }
# J* f; X: B) Q/ ]# Y0 a5 y! t+ d& J0 F5 ~: o. }0 [
public Activity activateIn(Swarm context) {) y$ t( b1 ?8 r
super.activateIn(context);
* m/ S% a) ?6 k9 c; O% u) ? g schedule.activateIn(this);
+ H w8 C3 z- Q6 Q, C5 | return getActivity();
! Z* s' U- y8 W( p }
. g) S3 B( v/ V5 j
9 Z7 ~8 P" H6 `, l public static void main(String[] args) {
1 N- v i& t- Z4 s5 x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% G9 k0 @& h t' D Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- s2 ?/ z; i& L1 d swarms.buildObjects();
( e2 A" y# j/ [5 w: A k/ X0 j swarms.buildActions();
6 d! ^( ~$ f0 k9 q6 @' O1 T swarms.activateIn(null).run();
2 m2 H4 @* a( Q( C9 f/ ]' O1 ` }
2 P! c/ ]# I! h" o3 L$ ~! l7 x( F1 k! w. b$ K6 ~4 d
} |
|