|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 J# h* R0 R% N
% K" m1 }9 a# ]/ X; e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ ]1 W# t" x! O5 k. }# v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% M! D* M# j) }! W$ w
swarm.SignatureNotFoundException
5 T+ w% b' y4 P" P: V, }& l# U at swarm.Selector.<init>(Selector.java:76)
0 n6 K* V1 F( Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 f- {% W0 j- b0 Z$ x0 H' [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 F: c6 _* D' i9 B5 _$ U( | n4 J9 _, ~8 `, n
' z% D4 C8 o( {; T$ fimport swarm.objectbase.SwarmImpl;4 D% r6 O& O$ l% `6 u' c- B
import swarm.objectbase.Swarm;
+ `% b" Y7 n. X/ W4 Qimport swarm.activity.ScheduleImpl;
. Z' f4 o* L" q/ m% n5 p4 ^# Ximport swarm.activity.Activity;3 ~8 R) X2 r- l" X
import swarm.activity.ActionGroupImpl;/ s3 w k/ u5 i8 L- S' p6 F
import swarm.collections.ListImpl;, D, d+ X" s0 c; Z
import swarm.defobj.Zone; 1 t& ]- D3 c1 _. [
import swarm.Globals;$ n6 K$ S; W% ]4 s; ~- @' o3 V: _! v
import swarm.Selector;+ f" g2 D+ ?1 [5 Y$ N9 i+ d
import swarm.activity.ActionGroup; 4 o1 T( Q( e: A
class Agent {
: R& d; q: }- Y) Z' G char id;" b% p* b1 t% i: ~5 _9 P/ M8 [
! w; n! R% u! H) Q
Agent(char id) {9 B4 V3 p9 S! R/ S. [/ t1 U( W
this.id = id;6 k* n% [* v6 a- s l9 U
}
% l1 \3 P) \1 K n% j F5 l# p$ Z5 D" A' X
public void agentStep() {- [% ]6 V& k5 G# [
System.out.println(id + ":" + Globals.env.getCurrentTime());. F' U! ]! D. a, _8 W# ~
}% D8 X0 e# q' `; Q" g2 h: z# ^
}. R1 I/ e8 `: V$ u( z
. W1 I8 p X T0 ppublic class ActionGroupDemo extends SwarmImpl {* \& G+ d1 G$ r c ~- V( t, X0 Q
ScheduleImpl schedule;2 j \8 I; x( u5 i2 T2 M
ActionGroupImpl actionGroup;
$ Q/ ]. i) e. C/ e2 P& ?! X9 K ListImpl list;
) S7 {8 i/ A* H1 A* ? char Id = 'a';0 O7 [) C# j! ] j- ^# l% U9 f' k1 ]7 |+ s
, _- n- Q& Z, x+ F; w0 u
ActionGroupDemo(Zone aZone) {
6 z* k+ l+ B0 x" t. L v+ O super(aZone);/ J5 N2 @+ z- [: _- L
list = new ListImpl(aZone);' v4 ~; {7 E& m# j# @% R& @6 K
swarmSetp();- w8 e- j6 H% C" c
actionGroup = new ActionGroupImpl(aZone);5 f4 S# l o9 b' b4 @+ d% O
schedule = new ScheduleImpl(aZone);. h; n2 A! W4 j" |2 F3 }- W: H
try {
1 A! f& Y+ p3 T3 I Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 N; J2 j0 P9 k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. E& M9 u! u. P( ]; @& U
: n. a/ K# F& k1 @! h/ p0 x" Z4 L7 x actionGroup.createActionForEach$message(list, agentSel);: L9 T4 ? f( P/ R" T" k1 W2 i; X
actionGroup.createActionTo$message(this, swarmSel);
9 \3 _/ Z# V3 T; E0 v schedule.at$createAction(0, actionGroup);
; b! l9 c* @/ v" V schedule.at$createAction(1, actionGroup);
6 i* u s1 e! k schedule.at$createAction(2, actionGroup);
5 w9 |0 Q) T5 V9 @
9 b: r F( X% i _5 Y% H } catch (Exception e) {1 H e: B- m9 |$ n& x: A$ c
e.printStackTrace(System.err);( H- X$ ~1 G- r
//System.out.println(e);
1 w1 u$ I/ q: a5 ~, ` System.exit(1);
4 M; q! f, ^% [' }! \ }7 q: J. K. c5 o! H. q
g ?* V$ j a' r
" m/ K# b4 b1 S5 x) z7 ]
}
$ c0 {: x1 g( g9 w/ ]2 u1 A# J! M; ^
private void swarmSetp() {; A6 c: T+ h$ M- R
list.addLast(new Agent(Id));
7 d. y1 c6 N4 g( B4 m- I# } Id++;/ M- E! s3 { }) l: O$ ?2 j
}
r* Q8 ^$ \5 ]# m# m. H; G( K6 |5 E" z G1 A0 k8 [! X8 g- [* y
public Activity activateIn(Swarm context) {6 J1 a+ K- V" {' O
super.activateIn(context);2 O* c8 p! ^ {$ G5 d
schedule.activateIn(this);
" Y9 t3 s; t9 r return getActivity();" R( i! b4 P9 \- x- l
}. X" e: w. L0 R3 B* C: C1 z* }
6 J0 t% k* E: ^% |1 V
public static void main(String[] args) {
& X' z8 { q( _8 l! l4 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; w4 ~; O. u* u8 p' R8 u3 v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 U+ Q l( m$ u! V. m% _7 [% K# r2 K swarms.buildObjects();
5 U- o9 _* r9 U6 ?* M6 ]( R% ^ swarms.buildActions();
8 [3 s8 | W) F; K2 ~ swarms.activateIn(null).run();
& y8 }, G& r5 D }# f$ g, h: j+ g! d
8 f* V' T4 [* b$ _4 f} |
|