|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 I& B, y) Y# J9 s4 J9 M0 E$ w; T4 w* {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) _+ X1 ]( U ~" E* |( x5 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 O) x* @- w0 g9 ?% U- z# O. k$ g
swarm.SignatureNotFoundException
% l- D9 \0 p5 s- f: G } at swarm.Selector.<init>(Selector.java:76)$ m7 g! i$ `0 f- D2 R/ j3 l
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" Q0 [# F; D* n/ V" I7 L
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* Z f' Y; r$ \6 l( S
0 @8 L8 t3 }& [2 D# S! T8 F% T% ^" N: |+ A
import swarm.objectbase.SwarmImpl;
. _$ S( Y) I: c6 o" Q, ximport swarm.objectbase.Swarm;/ g% \6 Q3 M, P, z/ Y+ h# F
import swarm.activity.ScheduleImpl;
+ d$ |# _* Q& q* J9 Q a+ i4 ximport swarm.activity.Activity;
, c: ?2 h0 a& C4 x9 ]$ w9 c, bimport swarm.activity.ActionGroupImpl;! a% [6 S2 l: e0 {; B
import swarm.collections.ListImpl;
9 o% @& o* V+ c4 uimport swarm.defobj.Zone; % o* {" ^4 b/ r9 ^+ E8 i
import swarm.Globals;$ u! o( f0 j. h. r
import swarm.Selector;
% v3 d7 b) G# O% O7 T6 Q3 V+ Fimport swarm.activity.ActionGroup; 2 l# Y4 q' J/ K7 L9 z
class Agent {
# I: m/ M) _- g* Y7 j9 I* V char id;
& P) A* v8 r3 y* V
- O: W. Q: @4 y$ q2 s Agent(char id) {
' `0 J$ Q# I) f+ X this.id = id;$ O/ C3 L) [7 _& X$ O* G
}3 r$ S3 Q! E9 I4 j& u
1 W; m0 p1 F' u
public void agentStep() {7 I+ q& k+ R* @$ b' P
System.out.println(id + ":" + Globals.env.getCurrentTime());. v0 D7 t' c, Z( D: R( O$ F
}' Q* K) d3 C5 Z
}
* k5 @1 h) H2 W$ V# V$ L
& a7 k2 F5 {8 Z8 [4 y" J j9 j( Hpublic class ActionGroupDemo extends SwarmImpl {# Y: l5 m+ L" R O# O
ScheduleImpl schedule;' U$ K( L3 V) b
ActionGroupImpl actionGroup;
2 ]3 R& P, O: R4 F- S/ W ListImpl list;
) ?+ V8 E' `! v2 @5 g8 M char Id = 'a';
& D0 H: A7 h4 h+ V6 m3 i- \! N& A3 A/ Q2 X' Z% A4 v
ActionGroupDemo(Zone aZone) {# F d8 I2 _. l; n: M* F/ a% P" n2 a
super(aZone);
1 C8 v2 E0 M/ P7 B% P* b list = new ListImpl(aZone);
1 p6 P. P- j! A! Q, I8 N8 K swarmSetp();# ?5 w8 x, L) [$ \. n& c
actionGroup = new ActionGroupImpl(aZone);
4 }! @/ I( J# k) ?4 R schedule = new ScheduleImpl(aZone);
( K% P% e: z* ` try {
* Y& u; r3 | T9 [7 H2 k6 G Selector agentSel = new Selector(Agent.class, "agentStep", false);. g/ l) e/ n' K5 X( @8 w8 s8 j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# n# b$ ]' q6 x0 D) ?+ ?
9 U3 t9 f! P4 ^, f1 b
actionGroup.createActionForEach$message(list, agentSel);" y8 m' N+ n: `9 `" @+ A
actionGroup.createActionTo$message(this, swarmSel);
# E; r( ]1 K! e6 `9 w schedule.at$createAction(0, actionGroup);( ]% K- T. P: P1 }7 S1 p+ q
schedule.at$createAction(1, actionGroup);& `$ J7 Z) R0 i: J7 N9 d
schedule.at$createAction(2, actionGroup);9 f# T& b7 N! x+ X, m
* ?; c$ h8 r! U* \# F: F, P: O } catch (Exception e) {
- I( u, ]: t( r/ J. I# e e.printStackTrace(System.err);
5 m& {# b1 ]$ U- f9 b //System.out.println(e);
) K3 o3 g% \; N3 ]/ N System.exit(1);
: t( f* q" }5 c7 u9 a. e* [ }
, l* r$ k* n- t6 D- K+ h
9 K( Q4 V3 P. g5 ^
+ z3 m: J6 P2 j+ @' A: e }
7 F3 _7 j# y6 m9 \" y3 e
8 V) ]; [2 }% a- V6 P' S private void swarmSetp() { r \+ W* R9 O" T
list.addLast(new Agent(Id));* E8 h) g' t- p- ?6 `2 W; w. g3 \
Id++;
0 ]) b( D1 b+ M }7 X/ ~+ G% @% V
+ N' H1 A8 n d7 P1 A/ z! ~ public Activity activateIn(Swarm context) {4 [) Y4 w5 B% j( T( @0 ?( S, I
super.activateIn(context);6 V1 R3 Q& g, L7 R5 A2 W6 j( b
schedule.activateIn(this);3 {5 b5 |) _$ |* m
return getActivity();( c. }8 T; y6 M2 \7 O
}
$ v, a% \) p; F3 q5 T. `# o$ B7 x# h
public static void main(String[] args) {
+ _- {6 w9 a! Q- b% W ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 ?9 u# g8 j1 r5 `% r( b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( b, E$ R2 T3 [* c swarms.buildObjects();
" z# r" _; {4 D' s. g; N swarms.buildActions();3 t$ o$ e( t- i b
swarms.activateIn(null).run();3 S, O7 P2 g8 T; P, M- ^
}
$ e6 |9 v6 b6 K; B' o8 k% Y
3 N7 v& I/ B0 Y5 U# [4 j/ J2 f" D" p} |
|