|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . s5 h0 J0 ^2 e% H- s
! [9 H2 V: M( K' K8 @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 D5 c* S4 Q6 s' O: v J" f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ F( N" h3 @6 Q4 S7 G
swarm.SignatureNotFoundException
' p# Y7 d6 Q3 o# o' c' w at swarm.Selector.<init>(Selector.java:76)
3 u. [$ V0 t: o- ^4 L* K8 ?* p0 s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 a' a" R* h$ c0 D at ActionGroupDemo.main(ActionGroupDemo.java:67)
* N8 ?% z2 G# z% |# U5 n& }8 W% q$ C
9 a- t; T, v, \3 _2 Q; p4 B
import swarm.objectbase.SwarmImpl;
' S! \/ m) m) f2 v' n% ~import swarm.objectbase.Swarm;
, U/ {; h5 Q+ C0 [8 cimport swarm.activity.ScheduleImpl;
% g& c% V, L! N; Mimport swarm.activity.Activity;& l% y( j w: T, K# z% C# ~+ @
import swarm.activity.ActionGroupImpl;) w6 a$ y3 [$ M# W. i
import swarm.collections.ListImpl;
1 ~4 `, A- n5 b0 E, }) X0 }import swarm.defobj.Zone;
* A7 Q' ]" }2 f8 N/ M- R1 B3 Zimport swarm.Globals;( H& y* d4 `- ~6 p7 |- C
import swarm.Selector;
. s6 F" p0 h/ h& x# A# eimport swarm.activity.ActionGroup; % |, G5 y+ r! z; k* T! X' R
class Agent {' j9 \! a6 j, P; E8 X/ i2 l
char id;0 I+ B9 I2 D0 ]/ u
4 v9 \1 K! t5 Y" }* g. l! c
Agent(char id) {
) D9 m4 x5 F3 { this.id = id;
, f# ^6 s" k9 V% M }7 N, [1 ]4 s% s# u7 W' D
! w2 G! i5 i4 f% e n& z* C$ A' d2 ~ public void agentStep() {8 | d2 Q/ o8 D
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ u+ h( M+ K0 G }1 s" \+ T4 R8 j m6 M3 @ D
}
: m5 v2 P" r0 p4 E9 K
5 w( l/ ^% l& w+ w9 opublic class ActionGroupDemo extends SwarmImpl {
! M1 v0 {1 k8 b; ~ ScheduleImpl schedule;& |' w! q0 i' b0 @
ActionGroupImpl actionGroup;: I w Y( h8 d, V
ListImpl list;
; D: C7 G/ ?# w1 T char Id = 'a';$ }. z& p$ B: p& W+ I; y* L
9 q8 ?: @. _* e, Q5 o3 o- T; k! f ActionGroupDemo(Zone aZone) {0 K- \- x+ l1 M0 u
super(aZone);5 T; ?; X* g! j4 @6 g* B1 `* V
list = new ListImpl(aZone);# W i# V( y. R w' b4 ?: }
swarmSetp();
" m, @# L+ R; x, e actionGroup = new ActionGroupImpl(aZone);
) ~/ d. N3 k# \5 K: o1 ] schedule = new ScheduleImpl(aZone);" K1 Y# ~( t4 w& J
try {+ m; L' H7 ]( L% F) D' T' V! O
Selector agentSel = new Selector(Agent.class, "agentStep", false);, j9 \+ I W" B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, I/ e1 _+ X. F5 }! ?5 H V8 w 5 \, W* G8 q0 D
actionGroup.createActionForEach$message(list, agentSel);; A! q5 f+ Y/ ?7 P) `( M( j+ l
actionGroup.createActionTo$message(this, swarmSel);
2 _, Y9 v: K) Y1 G schedule.at$createAction(0, actionGroup);
' O u. d7 R& X/ I6 m* P; I; y3 w schedule.at$createAction(1, actionGroup);
/ H6 F! O r! U9 u* {* s schedule.at$createAction(2, actionGroup);/ g% Y6 p B! T% o. h
, I( S$ C; \) V. P7 `2 d3 B! E
} catch (Exception e) {
0 k" s" n- c0 k% q$ M: } [ e.printStackTrace(System.err);9 T! R' N* k8 ^3 q9 X
//System.out.println(e);
% x8 O; l- a9 B% ^ System.exit(1);
& k2 Z4 l: `. H }( F% j5 T! d. D* G; m3 C7 h9 [
5 s$ A$ t- O: u4 ~2 d4 Z% k; _8 P
9 a* j) S! |" ]
}' D0 u0 P8 Y! z; P- d2 e" Z: d
) J, d. Y8 t: B1 B! x, s: L
private void swarmSetp() {# a6 Y+ E, w5 F" \9 }' x7 G% e1 s3 y% m$ B
list.addLast(new Agent(Id));
+ ^& Q- `7 t$ p9 N; _ Id++;# W3 L# L' ?9 {/ @: G
}% h' Q' b/ \" [5 b) T+ k+ e
$ e5 G* s5 u& i; b# U) `( c public Activity activateIn(Swarm context) {
1 Z& R. Q$ m2 ^5 ?. s* i# h super.activateIn(context);
! c7 @9 F, q& ~- h2 B+ E+ a- n schedule.activateIn(this);
) [- W$ }8 k- P) k& i return getActivity();* P: C. j8 m9 f( l6 b' w! J4 Q
}
* g& |) X, J( W. {
2 |. [2 _' }. Q& t& Y8 v% O public static void main(String[] args) {* W: _+ L7 A, V2 C+ T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 I, Z6 j4 d: C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. `. u$ E0 y, ^) Y1 V$ b. V swarms.buildObjects();- W5 ^+ l) Y4 W8 `3 v( t
swarms.buildActions();
9 x* c3 g R3 A swarms.activateIn(null).run(); V- d3 F! p3 S6 i: R3 l1 ~% m
}7 a A& e$ q: H. w; m
9 U: @% `! U3 d( W* S! o2 g
} |
|