|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ ?& @- ]; P1 X+ Q5 g& e: S- B
* h2 M9 l, r5 Y r8 i* t( h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# I( }+ g( ~( h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* n3 M8 y. ]' Q6 ]* L
swarm.SignatureNotFoundException
2 \' R# r, Q. B0 ] at swarm.Selector.<init>(Selector.java:76), i0 U; _$ Z! S7 O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 {! J8 c, x/ [ at ActionGroupDemo.main(ActionGroupDemo.java:67)1 v& R' I' M. S% d
3 ^6 ~' i2 F" P7 w9 V) Q& w9 F9 Y: i0 \
import swarm.objectbase.SwarmImpl;* y/ s* Y, L1 g2 J* U; f
import swarm.objectbase.Swarm;
* e' T( W: N" Y: gimport swarm.activity.ScheduleImpl;. z+ O$ e/ j5 b' ~# c7 x
import swarm.activity.Activity;
- H/ L* b" x- t6 ~import swarm.activity.ActionGroupImpl;: Y9 W, W5 E5 w7 F- ]6 n; w3 ^. x
import swarm.collections.ListImpl;
) H3 z& P+ ~' vimport swarm.defobj.Zone; ; ?% ?$ s& m: t- z, `7 N( W$ v
import swarm.Globals;
' J1 d9 ?/ U- N& @5 v% Limport swarm.Selector;/ y; m1 h9 Y+ [. Z7 k7 k% h
import swarm.activity.ActionGroup; ( k& m S3 x" z8 S9 M5 t$ ^+ C
class Agent {
% D( `7 ^5 K, U! O char id;
; y, u8 M9 |* t8 ], S. H: y& I) Q5 w8 z$ T
Agent(char id) {
) L# `* W) O' D1 K b& t this.id = id;( T7 W4 z1 P P1 z9 l+ ]) b2 D
}( d4 B" k) E7 e, d F5 z G
9 H; f- U, x; x5 u& }# n/ R public void agentStep() {
4 W! `1 {0 E9 \3 N5 Z' x System.out.println(id + ":" + Globals.env.getCurrentTime());
1 h# }* ^: i& F% j% r( a+ W }' N8 e4 |2 c& k; X
}
, p% ^6 F& R% F9 ^, W
/ s4 B- Z5 ^* P) r8 ypublic class ActionGroupDemo extends SwarmImpl {+ \. t' N% t9 r4 M2 g
ScheduleImpl schedule;
! H- F$ ~+ P" k5 Q, Q ActionGroupImpl actionGroup;
' a4 g( D8 F& B0 e2 U ListImpl list;
$ x" x: l* ] U5 m char Id = 'a';' F( C% I0 ]8 q" a1 a
0 x7 d6 c# n5 r, i2 X
ActionGroupDemo(Zone aZone) {' p( Y! _$ ?, f3 Z
super(aZone);, J8 j1 y1 z$ n, X6 G
list = new ListImpl(aZone);9 ~% E8 j8 W4 q* T9 d$ y8 R) H9 }
swarmSetp();; _$ S# L% V z
actionGroup = new ActionGroupImpl(aZone);- \* H# V, ~6 r4 k# @# ?' q- V+ B
schedule = new ScheduleImpl(aZone);6 h2 N- ~6 S ~- S8 P/ {* g
try {: }4 j$ l6 B- |: e' @1 W, c7 Z2 W0 Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);. e3 W3 Z( D2 z6 \/ O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 B. O; I. R5 f8 v" W4 i
& ]9 L9 v' r) H8 [+ |4 O
actionGroup.createActionForEach$message(list, agentSel);1 T1 C( R: V+ m
actionGroup.createActionTo$message(this, swarmSel);
; n( X: ~& y5 R' A! u7 o8 G schedule.at$createAction(0, actionGroup);
5 X+ L) N2 W6 U( E* a/ W& E. ~# y schedule.at$createAction(1, actionGroup);0 s# ]% Q/ J) i$ e+ \+ N
schedule.at$createAction(2, actionGroup);9 ~/ I- n1 N/ ^5 O! L" |
# `: N- A" t& ~) D# n* K9 e
} catch (Exception e) {2 D1 I# D. b2 @" D; y; K' W
e.printStackTrace(System.err);
1 T7 c, @" _3 h* \8 N- T+ F$ } //System.out.println(e);
; Z' ?( o8 _2 E System.exit(1);% m9 {2 j0 M( Y
}& n' E: I2 }) q( Q
6 S! ? i6 t c, S8 j
+ k1 J) D! u5 b+ E }( y8 T. C$ J9 `9 `. p3 Z8 S \1 l
' ~; W# w& \( f0 H! V private void swarmSetp() {
3 W% `0 i: ^5 z3 f( L list.addLast(new Agent(Id));9 W1 z# D+ { k9 H9 ~) Z; s
Id++;
3 T6 [8 S/ q' G( ]5 ?& G" K4 O1 { }* u9 }' E1 F. u% ], q) E
/ s D( H+ O8 i0 o; N' v) `& K
public Activity activateIn(Swarm context) {! x4 F: r8 A) j" u ?! o
super.activateIn(context);
$ G0 b* X7 q. Z) G# x0 p# u schedule.activateIn(this);) N9 i. K( T2 K) d+ S* {) |( x+ X. [6 u) m
return getActivity();
; o( Y* _5 v: B }
9 b. y+ m6 h; v- _$ t- B
' ]8 Q3 L, { e6 Q& u public static void main(String[] args) {) ?; q( v/ V y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# s T- e1 x( `$ q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- V8 `# P% h L o- o7 G/ U swarms.buildObjects();/ J* _5 q, j; L' h$ d! y T9 ?
swarms.buildActions();
1 ]- X% H% E' t1 D/ | swarms.activateIn(null).run();/ }2 i3 W) Y) X4 W1 I& x8 a/ D/ p1 H
}# H! e. d* i; R ^$ R. N
; C) d/ I) N) g. F( \
} |
|