|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( h5 F: I' p8 r
1 @5 Z5 h9 \: F: l' {( }! ?! d$ ~! j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# Y! E& I( k& O; Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 |6 n0 o" H6 [+ S! Pswarm.SignatureNotFoundException
; B) P$ S5 e& q4 v9 X( P at swarm.Selector.<init>(Selector.java:76)0 P. X" o$ Q7 _5 {+ Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% g( l: k4 W' E8 s
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* C2 L$ b j, o0 z$ t* u: A
) W6 X# c0 I4 g1 U3 q) D7 S) w; G2 ]9 u! @& w
import swarm.objectbase.SwarmImpl;! C5 B( z' _8 i( t* J7 K( h: S
import swarm.objectbase.Swarm;3 h/ ?- _ r2 j9 i4 c# S( }
import swarm.activity.ScheduleImpl;" T! s7 W* m9 `; r* ^5 [! O
import swarm.activity.Activity;! M. e3 C) I# x2 V5 f) q; M
import swarm.activity.ActionGroupImpl;
2 J8 B& }2 @. T. d* v, u: d9 Q, mimport swarm.collections.ListImpl;
! h* a4 Z4 S3 ?( U' _import swarm.defobj.Zone;
* I/ a3 X/ j( H- zimport swarm.Globals;' u) J% b' k) e% J+ g2 c: P, S- ?0 a
import swarm.Selector;. \# M( P4 B% r: y
import swarm.activity.ActionGroup; $ l; x$ ]7 M/ C( [2 Z3 Y
class Agent {
) Q% F1 d/ F2 n) j& J7 \ char id;
" B2 {9 R c( h" ~ }& c
. \* n7 ?/ ~, ^! R2 R: q Agent(char id) {5 ? Y J2 u! e3 _6 }6 H. R/ u
this.id = id;
+ A7 w( `8 j# l- {8 C# ` }
* `. O" K, W+ |2 Y# \4 O) b/ z' W. u m, B
public void agentStep() {; c0 d, v& H+ o3 O! k
System.out.println(id + ":" + Globals.env.getCurrentTime());9 B+ i0 D" l& J# e
}# _/ l0 y( M4 p5 x. W4 T
}
$ t5 `# ?" X% \, K7 a) K1 Z
$ q* {* y; H; j; w5 ?# spublic class ActionGroupDemo extends SwarmImpl {
8 M/ C. n ~- s ScheduleImpl schedule;( t, y1 b7 H( \# |; F8 Q( |8 O
ActionGroupImpl actionGroup; y! Q m _& v" p
ListImpl list;
3 U# T) C) e! b& o2 z4 d% u+ S char Id = 'a';
* o- x# [( n$ @ W7 g0 J9 g) o
! J: h* e9 A0 l7 l ActionGroupDemo(Zone aZone) {- s; y# ] B; `! z3 w/ i
super(aZone);3 l3 ]1 e7 P# s8 c6 Z
list = new ListImpl(aZone);7 X! U3 @' d0 M- q: |2 Z
swarmSetp();
% Z! j+ }) O; K% m/ |5 w actionGroup = new ActionGroupImpl(aZone);
9 ^' `- G+ v5 R* V4 s schedule = new ScheduleImpl(aZone);9 e& d# h; r" j/ Y% J
try {8 N% L8 L/ {( ^/ U$ Z$ s _
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 M4 c" n3 Q) I+ F# ^6 X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( P- [# {9 W8 ^! C9 h6 ?
: n6 H$ c0 |* Q. A7 t4 y actionGroup.createActionForEach$message(list, agentSel);7 M7 F& @1 t$ \8 f2 j) f
actionGroup.createActionTo$message(this, swarmSel);; O7 U: o! ~/ C
schedule.at$createAction(0, actionGroup);
3 t) \4 p0 G* g' j/ T+ X schedule.at$createAction(1, actionGroup);! x4 P! G% T% l T6 L3 ^
schedule.at$createAction(2, actionGroup);7 |/ i3 j" [$ H5 Y5 _' t+ C
! ~. n6 w* M2 [ } catch (Exception e) {& |4 W) S+ _% R4 p, r8 c( j
e.printStackTrace(System.err);% ]" ^% i7 f3 {8 k$ ?" o8 ?3 i2 g
//System.out.println(e);; K A y6 _' h+ b7 c2 k) ~
System.exit(1);5 u/ M" L- t1 _* Y5 G/ N. Q$ n
}
. I/ V* i. u1 h
0 h# X4 ]& `: g
& g" z1 K" h; K }
; c& |+ U/ T# t& U* ^( e5 R1 ?( x' C
* y& s4 x0 C; e) L private void swarmSetp() {- B. M' F$ z" \
list.addLast(new Agent(Id));. Z1 T& w7 c& n5 \* ?$ G8 z I, Y
Id++;
1 B& B; b9 B6 ^! W% N' I }
4 q X! ?5 ^* p% ^) ^5 t
3 y' g- f' V0 {# v( A3 _; m# q public Activity activateIn(Swarm context) {
, E& Z3 q& \" t; A: @) D super.activateIn(context);
9 G8 S& k, A, I3 W schedule.activateIn(this);
5 p( T' O$ D6 ?5 m% j/ X1 _, V return getActivity();
. \% p! b- O5 W7 I }2 V5 Z5 d: s. f9 z7 j2 a# g k0 G7 X
7 l& N# C' u6 {# M$ }% {2 [ public static void main(String[] args) {
! M" W' x8 |+ n3 B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 t3 W& O" }8 H( Q- J2 t
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. G2 A( @) V9 Z0 l4 T6 z( C u
swarms.buildObjects();
. y' ?0 |4 D4 \7 g: @2 k2 `* L8 F% h swarms.buildActions();+ A+ `1 T8 ]/ a' {3 v
swarms.activateIn(null).run();; U0 H8 z j. k2 y; ~2 S
}7 A! j0 Z) s6 r% v& C
5 D5 y. `! e% _* g% y! ~} |
|