|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 s& Y2 d) K2 g' E6 x; C& K. b
- m. v7 K4 s, l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 e& d1 \% Y/ A* F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. v v/ {1 V$ u) r3 D. Y fswarm.SignatureNotFoundException
" m& f! `% ]0 o5 M at swarm.Selector.<init>(Selector.java:76)
3 s0 s7 U) ^; b5 f6 _- \- U: Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ ]" h) v" G" @' z) l: B
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( L' a* G7 p$ j6 U6 K- Z+ L4 [0 U- d6 d5 a
" U: |* O8 K' w; ~ z
import swarm.objectbase.SwarmImpl;
/ S+ O& {: d; @7 b3 F$ i; zimport swarm.objectbase.Swarm;
1 B8 X! u, X$ H: q! qimport swarm.activity.ScheduleImpl;
% U$ z" ^$ m3 A% |, i& K% cimport swarm.activity.Activity;
; l( a( A# E; `% h' s* Kimport swarm.activity.ActionGroupImpl;# x! f+ w# H5 w
import swarm.collections.ListImpl;: D& f% T8 V- T: ?) I# }6 u1 j
import swarm.defobj.Zone;
) j2 P4 p9 l4 I: `# I limport swarm.Globals; \+ C0 \' l8 d( |% \ F Q
import swarm.Selector;" x1 b% T( u H
import swarm.activity.ActionGroup;
/ t* j$ f7 f8 ?/ Dclass Agent {
6 w+ u; [3 ]* H+ A- t char id;
0 @9 d/ E$ m, D: l4 \8 Q- Q, M$ r2 t* l& ~6 k/ H2 C' i+ l; }- z
Agent(char id) {! l' X3 ~$ Y4 a3 X5 h R+ F" c
this.id = id;, A0 Z3 L0 N0 u6 c. g& J$ |2 l
}" k6 I2 r. x+ t8 H% i/ J6 w
6 D: }3 C0 q, [. ]
public void agentStep() {- t: X2 R4 M! T+ o6 X) X+ M
System.out.println(id + ":" + Globals.env.getCurrentTime());9 p9 k: N$ [& p4 O
}" f% [% p% r. z* T. v
}
. ]* C$ Z4 y1 s" B# N
! Q( _9 T2 P1 c% ]9 K% l9 Rpublic class ActionGroupDemo extends SwarmImpl {; {% b, W- j, J' S3 F; W
ScheduleImpl schedule;
+ }* P* J1 p8 e9 f- Z ActionGroupImpl actionGroup;- y7 K Q; k3 t0 n9 ?8 d2 E3 I. H( F) m
ListImpl list;1 m1 L9 m+ O3 k3 T: a
char Id = 'a';% }- g) v- ~1 d; f
) d! c8 h3 r$ W8 e( B0 I
ActionGroupDemo(Zone aZone) {; U. ?9 l0 `! ~ n
super(aZone);
. ^7 b. ?6 g6 d% u& w list = new ListImpl(aZone);
; Q0 X z0 M& M4 [, O; ` swarmSetp();
{) G' o& u& k) H" W actionGroup = new ActionGroupImpl(aZone);
7 ]5 ^. b5 A6 R, x; G$ B schedule = new ScheduleImpl(aZone);# t4 N* n3 ]6 |: {, r
try {
1 W3 [9 ^4 g( q* C% }4 T Selector agentSel = new Selector(Agent.class, "agentStep", false);
# }. F' `* _; u3 L! z7 h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: Y0 e/ ?7 R/ H: s
; ~) [; ~8 }+ b1 M$ \. M actionGroup.createActionForEach$message(list, agentSel);( t$ T# x* O* a8 P8 b0 x# b8 s* w
actionGroup.createActionTo$message(this, swarmSel);
; [" M/ |5 }. M- i5 h" g schedule.at$createAction(0, actionGroup);
8 [ w; c( k! i0 y/ a schedule.at$createAction(1, actionGroup);
9 G, A1 K% P+ f9 ]6 I7 R w schedule.at$createAction(2, actionGroup);: r. Z( c* t* d) @
+ E q' w: n* N* p1 X. w8 I8 Z
} catch (Exception e) {$ {* W) t" T* ?& l% G
e.printStackTrace(System.err); Q9 p& W) J h# v7 N0 J7 P
//System.out.println(e);7 k& V& w. |; V3 ]/ B
System.exit(1);4 _5 o2 U* A) p
}
$ v+ y. w: a( x6 o1 N3 b
* _: `9 \2 V! } d* V8 y! I+ \ C: @
5 r4 P3 `% L N/ i }
1 m: O/ `5 k# r3 T7 [, W5 q2 s C+ z3 W- V1 Y0 D
private void swarmSetp() {
& S* a# v8 k- @: V# X list.addLast(new Agent(Id));4 s; Y% O \. }7 j0 B
Id++;
" S1 C+ s" x6 o6 s/ N }6 B0 H2 V/ C% T2 F" a
* i! z% X" k* e/ ^# p. Q public Activity activateIn(Swarm context) {
) n L2 F5 A% {; |! K, L4 l super.activateIn(context);
& Q+ l% R+ E. f. [' q; h schedule.activateIn(this);3 x' O3 [# T; Y/ I% r% u6 ?9 \2 d0 D
return getActivity();6 c) p' Z1 q3 t+ T
}3 P# k$ k3 Z- @4 ^; f6 b& U
) c9 d0 M% c: \* \6 v public static void main(String[] args) {, V" c, G3 ]& D6 E' `! {
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' G: `: q0 y. |' c# \4 ^6 k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 T& U. n( _1 G5 k- j1 v swarms.buildObjects();; z8 m+ W) k9 v( q6 I# b
swarms.buildActions();
7 f/ i- F7 o7 z swarms.activateIn(null).run();! ?( V3 W6 N6 v" [6 g* {4 n# c
}; C4 @9 R$ W* P; `( P
* S i* C) B* ]% c} |
|