|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 d$ C# U F( a4 D$ h
; T' E D8 P, v2 u6 @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. c @+ d' P) M6 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& u" ?7 \+ {5 F! @$ x; u! \swarm.SignatureNotFoundException( Z# p& i; V h: X
at swarm.Selector.<init>(Selector.java:76)% V* \$ k: F: i0 r+ N& p* G5 B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), ^* I/ i& V5 U( {" S
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 f; W9 Z! ?1 ?0 M, y- ?
5 q% K' P/ C8 G/ T$ `6 G: s8 k, q- ^( |
import swarm.objectbase.SwarmImpl;4 z4 x6 t+ L u1 G$ A2 D8 U
import swarm.objectbase.Swarm;2 d( L7 P0 w7 ? J5 J, v: A
import swarm.activity.ScheduleImpl;
1 H# t- i5 [* S0 o+ w$ J+ Qimport swarm.activity.Activity;
& L7 n G) C* y, n2 V& uimport swarm.activity.ActionGroupImpl;# W8 H5 N5 U$ x6 z
import swarm.collections.ListImpl;
" I; {! A \, C3 E9 |) l0 Qimport swarm.defobj.Zone;
' P8 j* d- e; K) W) uimport swarm.Globals;
% ` A) J9 c+ V3 a1 i+ F& [& b% |import swarm.Selector;# }) T7 X; o' s1 F5 X9 u
import swarm.activity.ActionGroup; 9 z% `* j; K+ I/ V6 x7 A! t
class Agent {
. H E( u) ?6 E/ ]. h) R$ Y! | char id;
3 j' T8 [ K5 r# O: o0 b0 X
5 R8 n0 i, ?' A3 Q2 c Agent(char id) {; m% x( x9 F* [3 X9 q7 O5 J
this.id = id;
, A1 Y. Q4 s; L( C }
1 c" E4 f! W4 H3 P+ A& e# P# @
! @: @* P5 `. ^) h9 @! j- Y' D public void agentStep() {" y' n) M& a$ D/ H1 B O; M
System.out.println(id + ":" + Globals.env.getCurrentTime());) m# ~! D* F. C$ R
}8 E7 R/ e; d3 G- g4 J
}/ R: v9 z: [; H8 [/ o. k
6 L& }# E# ?1 epublic class ActionGroupDemo extends SwarmImpl {
3 b; q7 o6 |% s) D) W# S% M, G ScheduleImpl schedule;! u# w' Z5 K$ r: E
ActionGroupImpl actionGroup;
! q" `: b1 B4 f3 |1 z2 j6 z ListImpl list;
# P! f9 _; a: _2 F% H char Id = 'a';7 h+ `% k" i6 D1 c3 e2 s9 b
: t5 o# w: j. m, p9 B. o1 z ActionGroupDemo(Zone aZone) {
0 k7 B# Z3 G5 f! _5 R super(aZone);8 L8 j' H/ Q, o y6 f5 `/ M
list = new ListImpl(aZone);9 H# I2 _3 T+ R+ l" c
swarmSetp();
2 b& X5 s* b% u* l actionGroup = new ActionGroupImpl(aZone);
- t" ]) }* {$ G schedule = new ScheduleImpl(aZone);9 i9 D `0 R1 C# A; X0 h4 n
try {
( n' z) E+ ^" L8 b% B Selector agentSel = new Selector(Agent.class, "agentStep", false);
! N$ r% U& _% x/ C3 _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 F* _; f, I6 e ]5 o5 u6 F! L
: S& R& j5 ?2 _; D! L
actionGroup.createActionForEach$message(list, agentSel);
7 {8 R- r2 Q6 Y2 r8 m- \ actionGroup.createActionTo$message(this, swarmSel);
& u! ?0 ~' {& Y) d6 q schedule.at$createAction(0, actionGroup);
1 K" ], X3 B7 b/ m" R schedule.at$createAction(1, actionGroup);; @) C; G9 _7 v6 w4 |6 `
schedule.at$createAction(2, actionGroup);( A. {' r$ [8 T; W
2 P" ~; F. ?4 P9 |8 N# J$ H; u
} catch (Exception e) {! p2 \; j! J' _/ h) C
e.printStackTrace(System.err);
9 T9 s) Y2 W% X# a5 u V% s$ Q //System.out.println(e);
" S9 ^6 u6 V1 Y; f' O% w3 J4 |5 Q System.exit(1);
) b- i) I' `; N6 }7 f }1 S6 R8 \) N6 z
2 @. G" s" s/ C9 A+ M/ c7 f3 C$ T" P9 |0 v
}
Z; V6 ]7 ?" W
3 @6 c$ B6 y# P! D/ G$ L' ] private void swarmSetp() {
7 q) R3 I4 X7 } list.addLast(new Agent(Id));
* p+ {( Q4 n1 e/ u Id++;1 D( `. ]9 F" s" x
}7 S; r! m9 o" @0 W! I3 ^
+ s! b$ e4 v( k$ f& h; x public Activity activateIn(Swarm context) {; t' [. ^! H$ S% u4 L0 F9 ?6 ? s
super.activateIn(context);% q9 B$ \6 d. N0 m1 F+ p
schedule.activateIn(this);
, i; N2 @4 _- l# r return getActivity();8 [. ?9 ~5 u5 j4 ?0 t- ], Y
}
4 V2 W( q$ x' W5 l4 b% L" \) D% \. m5 [4 j1 l$ S
public static void main(String[] args) {
* L2 t' B; v# V- I' V. _# F/ T Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 @) s, t- C9 m+ q0 ~ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 S( S& u4 X3 F* v" j* J swarms.buildObjects();/ \1 [! \) S2 [% i- x8 Y Q$ b @
swarms.buildActions();3 G8 E5 b/ Z: V. T9 \
swarms.activateIn(null).run();; E* y- S4 X, Z! G' V3 U9 C2 i
}
$ i$ @8 K* Q5 s6 q8 [/ V( h; P$ @
} |
|