|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; X- z% c S8 Q& I2 `
8 R& q! q* L6 B3 N* }! `7 J& ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 [) }" ?( ?& n S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ y' S6 [+ @2 c, a% ]
swarm.SignatureNotFoundException' z5 d4 K, @6 k9 @$ K- e6 g9 o
at swarm.Selector.<init>(Selector.java:76). s. w8 \% r0 B+ A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 f9 M/ {9 t$ V
at ActionGroupDemo.main(ActionGroupDemo.java:67)" m: O# L7 E, t* G4 X8 |& `
3 V- X; | u! o2 u. b
7 @1 {# _7 D3 ?! y6 ^; Mimport swarm.objectbase.SwarmImpl;9 t" M8 t5 R3 f" W- I& M7 D8 o& L# b
import swarm.objectbase.Swarm;
7 u! O! r. q/ Eimport swarm.activity.ScheduleImpl;- \1 y0 [# ~& G+ T+ w! ]5 n/ G
import swarm.activity.Activity;
8 t; s r% h! ]$ j9 [& ?- w( Ximport swarm.activity.ActionGroupImpl;# g' W9 ]4 ?( {4 l
import swarm.collections.ListImpl;
e, C9 e. t, P, M5 [; timport swarm.defobj.Zone;
5 ^. t8 X% I' \+ Q: P/ g( rimport swarm.Globals;
) h o( R: P& \1 l: Dimport swarm.Selector;4 Y$ p) S4 K$ X
import swarm.activity.ActionGroup;
/ z! d1 L+ C( m+ Bclass Agent {9 v' M9 E, {( H7 y: W
char id;
( C8 k/ r2 H/ j# ]* ]$ ^( r4 K+ F2 ~' M7 V* s+ v4 Q, l
Agent(char id) {
/ H% Y; Y% k. |8 I this.id = id;4 E* r' F J$ ^$ u. D
} K6 w: }4 q8 f: e* Z% \4 f# K, h/ b
- B) V/ r9 h7 n/ _/ I! _& @0 w
public void agentStep() {
6 @7 N1 _1 Y. ]) k$ y8 b System.out.println(id + ":" + Globals.env.getCurrentTime());
( C" T3 ]+ g; b) z- h$ o5 @ }
) ^! m& U8 X0 \8 l}) ?" d H9 j* v6 O) i: @* u
# z5 g% A) o& U6 K% o ^, I
public class ActionGroupDemo extends SwarmImpl {
2 C9 t/ v" a h ScheduleImpl schedule;% f+ d, r% f* K+ [# I
ActionGroupImpl actionGroup;9 h4 @! F3 z0 y, r. e% ^8 Q' ^
ListImpl list;
: e1 b' u8 y/ o7 ` char Id = 'a';& @; F( [5 o9 {, f; |$ H
! b7 z0 q8 D; N4 ~% _# x
ActionGroupDemo(Zone aZone) {8 H- a( y: G1 ?0 P& _& p" u+ R1 _
super(aZone);
5 U4 a. V3 _- _4 b' @ list = new ListImpl(aZone);
5 Z5 k; C+ |2 a% i: l swarmSetp();' b4 r& G/ l# ?$ b
actionGroup = new ActionGroupImpl(aZone);: j+ q; T2 x Y) N6 p/ p9 k
schedule = new ScheduleImpl(aZone);0 d% @' Y, `7 O$ w/ J! W! @7 f, i
try {
$ v! b1 k E7 H9 M Selector agentSel = new Selector(Agent.class, "agentStep", false);
) l9 d+ q* c" k; n& u& B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% h$ e' v: h$ `, Y2 b% ~% }
; d( v& {( z8 e% v* L1 Q actionGroup.createActionForEach$message(list, agentSel);, ~' k7 Q* H1 d+ @+ l* G9 i! C
actionGroup.createActionTo$message(this, swarmSel);
: t) S& w' `2 m/ l$ Y/ J6 N schedule.at$createAction(0, actionGroup);
* L, S( ~, ^2 _" n7 Z schedule.at$createAction(1, actionGroup);
' S" W7 C5 F, Z" T4 I& u2 V schedule.at$createAction(2, actionGroup);! ^( \3 M5 m* J" a4 w" S
, U9 Q; o+ ]8 }
} catch (Exception e) {: t. h: h, M8 o( F0 d
e.printStackTrace(System.err);5 B4 j5 w+ E$ ^0 B+ L
//System.out.println(e);( ~4 X3 b6 w/ B
System.exit(1);- H1 I L l2 V+ _
}
4 }- }7 O2 p7 u e/ ?
% {) B r |' z5 k; s5 F) `: B) w$ g$ d
}
$ S5 y) R) f0 u6 u9 d6 t: r
1 f- D/ K& i; r1 i: T private void swarmSetp() {. f, L$ f* r7 k
list.addLast(new Agent(Id));5 h/ I. }# s5 c/ V5 Z
Id++;
0 j: F3 \6 q8 Z% [( Z }
G6 y0 \2 ^" B) s5 _- K
" S$ [4 s+ O6 n public Activity activateIn(Swarm context) {/ H8 Q3 z7 r3 J8 e. D
super.activateIn(context);
% U/ u# \& u) X! `5 s# A schedule.activateIn(this);& n* @% T A7 s
return getActivity();
; d7 Y7 d# N6 i+ U) |: N }( c8 m7 D# a0 @$ H! n
* |5 c$ U5 k3 `6 ^/ x
public static void main(String[] args) {
& S) [2 E, p/ B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* a7 d* i7 _6 r7 M: y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: g$ D4 R3 s4 t swarms.buildObjects();. H! r2 d" b& L3 }1 [. r( l4 I0 o& C
swarms.buildActions();3 F8 v) J$ j$ I0 ?, B5 v; t/ {
swarms.activateIn(null).run();
$ Q+ e3 w4 x* P6 {( n# A }) W" ^0 ~" N: H) Q" b! u0 ?
- g. \' W6 T$ ]
} |
|