|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& {6 W: L- b, S# A$ ^
! H5 f! X% g$ o+ b v" N, g: x% U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 k: t C1 N% T% R7 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 q/ O% M% [0 p
swarm.SignatureNotFoundException
. ?2 W7 a H! d' L/ r* D" ^ at swarm.Selector.<init>(Selector.java:76)# f# h" t; S% d }4 x) d: b
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" Z1 }; {2 S/ c! B
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 m) \) J1 \1 Z# o s" k4 W# M3 X( X. K) B' L0 u5 r- p
* ?& C$ W$ ?) C) w& @4 X+ i+ l
import swarm.objectbase.SwarmImpl;
- E* q+ }. p9 N1 g" T) Ximport swarm.objectbase.Swarm;
" G8 n; Z+ m5 \4 R8 a- I; Qimport swarm.activity.ScheduleImpl;8 _! T3 x$ b. ~" ~
import swarm.activity.Activity;$ r2 g; R( F7 w! v8 E. f' [" c& L1 |
import swarm.activity.ActionGroupImpl;
! K K7 t6 O' V/ @& Rimport swarm.collections.ListImpl;
/ F3 m, E }& T5 w9 _8 q8 d4 }import swarm.defobj.Zone;
9 K2 V4 R" W* B/ Y& simport swarm.Globals;. s( y1 J2 |. G! l1 e- D
import swarm.Selector;
0 a! Q! E2 i% [5 B0 oimport swarm.activity.ActionGroup; / y" ^: z1 _2 U' e- ^8 K; q' F! N
class Agent {
5 q( m3 D& B p0 u3 Y _- t! } char id;
; E5 a2 p5 |7 j, f( q
- S+ N$ I+ H {' w Agent(char id) {
- j, V r$ W7 \ this.id = id;
% ~ }$ r% t. @ }
/ z% j; r# `( M; c" s, l4 a2 ]6 k; T* v! y
public void agentStep() {/ u$ a* z1 a* U/ G6 x$ g/ d
System.out.println(id + ":" + Globals.env.getCurrentTime());
; d$ v( G0 U+ r+ Z& j3 b, P }
' h9 _8 ^$ N4 ?7 B6 g# w& ~}' F6 {5 R Y3 E9 l
* A/ T6 u$ a6 D2 n) [# f3 j
public class ActionGroupDemo extends SwarmImpl {' ~% T0 ?( Q' I. }5 Y
ScheduleImpl schedule;. \4 ^4 _, o& D T1 f+ `
ActionGroupImpl actionGroup;* I2 i; }! W4 n/ G5 ^" ]9 p
ListImpl list;
6 [6 J7 ~( v" R0 I. H( s char Id = 'a';1 _+ ]/ C& A6 c8 K/ `0 S# l7 w4 _# ~
; V$ Z4 E$ v. b% y ActionGroupDemo(Zone aZone) {* m: ?8 l8 e" h
super(aZone);0 t3 B# t5 E) f+ W+ I! H) e
list = new ListImpl(aZone); J6 S! `% x8 c. \
swarmSetp();
) e( J, i8 k% D( n* q actionGroup = new ActionGroupImpl(aZone);
1 I7 V [) X* u( R C% G schedule = new ScheduleImpl(aZone);
" V. u7 h" J5 L1 \+ ?( y try {
+ j8 [$ r0 N: y) A* ?& P Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 H" t+ p9 h# Q3 Z5 V2 m6 E% E s! k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( }, P0 o7 Y& {0 ?
2 q4 I: N9 {! B2 C actionGroup.createActionForEach$message(list, agentSel); y+ T/ y! J2 q0 f. ]$ Y9 i5 n% x4 O
actionGroup.createActionTo$message(this, swarmSel);
# g5 O9 T2 t9 P$ s9 {. s( }8 ` schedule.at$createAction(0, actionGroup);
+ Z2 T# M+ W& s. @4 n e; y schedule.at$createAction(1, actionGroup);
. N5 U) u" a5 b. r% J) E, o- J; x0 L3 C schedule.at$createAction(2, actionGroup);
# C- G2 k5 {* `. U' U2 O' Z: j0 A& K. a9 t; K0 A
} catch (Exception e) {% O0 k) R1 Z1 B) x
e.printStackTrace(System.err);/ w7 Y3 P+ n! C/ b' d
//System.out.println(e);
) C6 e9 U% n3 k" j) E System.exit(1);& Q! ^( h$ A) s6 l1 `; G5 R. a: s3 v
}
/ ]+ P/ Y* [+ M% `. h4 s: R) z7 e2 Y/ a3 T. y
! s6 v1 L, n/ h& e" d }# K8 t3 \, x& H: U% B$ Y8 W1 ?
m0 `$ e" P. C6 _/ n* U* N private void swarmSetp() {# H* h& e+ n" t! v& B; g
list.addLast(new Agent(Id));' K9 s5 h5 }; q# m
Id++;0 g/ L9 ^& d M6 U
}
% b% R2 U, u9 O6 _
$ h7 Z6 S& ]( B8 f public Activity activateIn(Swarm context) {$ Y& @! }; Z. w5 T4 J$ u4 v
super.activateIn(context);
/ E5 T2 H2 z4 b! \' U& r. |# V$ b schedule.activateIn(this);& A; `0 \) }) {
return getActivity();1 r$ y3 m2 `- I* `5 k; i
}
% x( E0 m7 R. b. Y i
. Z6 e: l9 `. R& l# E3 Z public static void main(String[] args) {. p" b8 m- p6 O; p# B2 @3 q$ j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) t4 E6 D5 o% `& h/ y) _# V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; `7 \. L8 P* x$ s& U2 N ~" `5 Z# c swarms.buildObjects();/ d; h" j( @$ h% A9 U
swarms.buildActions();* r1 T: y! b# G! ~& s2 i2 l. H
swarms.activateIn(null).run();2 ~! T) C' \4 N* K- Q, f
}& b1 v8 k& U0 `6 H: L' O
6 t# T- V& {2 i' X: b+ |- R} |
|