|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 [, Q6 j2 K, `& N4 h/ x
- g2 ]0 m3 t- _7 I: N s$ L. M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 V9 u6 q4 G6 y8 O0 u6 ^* ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ g+ O# o: |6 } I; _2 C) ~9 N5 H5 ]swarm.SignatureNotFoundException
/ K( C) k+ \$ F. q$ N at swarm.Selector.<init>(Selector.java:76)
: W; b/ r0 Z" U* o7 W" e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 }( s# P8 o7 X at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ Y/ r t0 _, \/ u7 N0 B. `2 n3 e. w; T W, f
" u4 P8 }5 s) Y7 J4 _* _import swarm.objectbase.SwarmImpl;' c! e: y+ o0 ?* ]' H7 F
import swarm.objectbase.Swarm;
8 `# S/ k* A( w& N, iimport swarm.activity.ScheduleImpl;: w$ r, G( W. F. t) [
import swarm.activity.Activity;
- G9 O( }" F1 X! a9 uimport swarm.activity.ActionGroupImpl;
) ~. f! H# D; w# d5 vimport swarm.collections.ListImpl;1 r& x. |7 }' S( i# A: y& D9 Y- F
import swarm.defobj.Zone; # z" N- c, X, y% Z: P
import swarm.Globals;# P5 L+ ?! w% a+ s
import swarm.Selector;7 x' O- g& K! O# b% S: M7 k
import swarm.activity.ActionGroup; $ O; [ a7 l3 S: j! W" f
class Agent {5 n7 d, Y& w; y" m
char id;
2 P- m6 w! e! S/ W$ I9 w0 e3 @# X. I0 t
Agent(char id) {8 H) w6 U% A% @; ^6 u! _1 l
this.id = id;
! s9 n; v( h; t7 R6 l7 |$ d5 _ }
& @( Q, ^# }+ ], F' W4 Q
, S, O% _2 y# y, [) r public void agentStep() {
) ?1 b+ E. g8 m' P3 F( f System.out.println(id + ":" + Globals.env.getCurrentTime());# P* v* E# i4 R0 q1 `7 _0 F
}
5 j. _0 f) t! {}- G3 X/ g, |8 t- O
. @ P R, p2 X, Y
public class ActionGroupDemo extends SwarmImpl {
0 p$ A) Q& f3 u6 B6 E d ScheduleImpl schedule;6 L: R" s; B5 b) h5 M8 h
ActionGroupImpl actionGroup;
# T( `% N6 T* B ListImpl list;
/ y* k" {2 x3 l" d) Y2 F Y. ~1 V char Id = 'a';* e2 Y9 n( I/ o m& y, C
: i% s7 R; Y( }' K$ J4 W" P2 m; T ActionGroupDemo(Zone aZone) { O! P6 n; R/ ?0 ]9 `
super(aZone);
; e: K" A/ R) v6 u' r. p5 [0 @ list = new ListImpl(aZone);; W, f1 [- Z# L) @5 {4 v) a
swarmSetp();3 ]9 j8 ]( C5 S; j7 ?
actionGroup = new ActionGroupImpl(aZone);
+ s6 y) V$ U' t6 m% Y* P4 C1 R6 V# C schedule = new ScheduleImpl(aZone);2 l. c- B3 S/ V( A% Z0 e/ H
try {
2 p2 p; D# x, a* [- W( z( i Selector agentSel = new Selector(Agent.class, "agentStep", false);/ C& a' F9 a! ?6 A' l y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 D+ n+ C! l N4 q & U& R: o) o6 {' p' p
actionGroup.createActionForEach$message(list, agentSel);5 J# A! t* N. y- L; Z
actionGroup.createActionTo$message(this, swarmSel);
" ^- D* G9 r# @( z$ y schedule.at$createAction(0, actionGroup);* j, [1 h$ g9 A- d4 e
schedule.at$createAction(1, actionGroup);1 x8 R4 M9 W+ C5 X
schedule.at$createAction(2, actionGroup);
) r2 D+ x2 Q% C3 ~0 N. J; n
) r& Q5 x" M, n& E' y4 M } catch (Exception e) {$ H1 z1 ?& [. U6 K6 b9 Z
e.printStackTrace(System.err);
, @7 p2 P, \ C4 v) Y //System.out.println(e);
& q' n( C% d4 x: F: { System.exit(1);
1 G# L. S6 a% g( K& e+ @) ~$ X }. P. ^. ~3 m1 Z3 d' D5 H
2 M, ~' N+ c8 ]
# p) j T; F/ M }
0 o& @7 V6 U6 G
3 X" d/ g" |) M private void swarmSetp() {- b+ T+ y. C: `. E# I" m% `
list.addLast(new Agent(Id));* z1 {# N( o7 C
Id++;& b* u- ^* x" P Y: Z! }
}
, k, i! c% i$ L% S
% N- @7 V: ? j2 T; ?5 R* q0 ^& N public Activity activateIn(Swarm context) {
: {2 ?( \; d0 f super.activateIn(context);( l* D+ ]' c. a% J, g" C
schedule.activateIn(this);% W6 i" Q/ O! g/ r% ]0 @8 N( N6 s6 `
return getActivity();
3 B) P7 |" @$ i4 d }
1 k# {8 O( l3 K* r, s, s5 \
# y: X1 }/ T3 H1 t/ A0 {3 g public static void main(String[] args) {$ N/ m5 ~( K" ~" {% q; \: ^
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 A1 [# o5 f' U+ u, U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 r7 g7 R* ]9 ^ swarms.buildObjects();
; k4 \/ |/ o: V' p swarms.buildActions();
. F, m I( Q3 [ swarms.activateIn(null).run();! s- n' |( Y2 g+ C* v
}
& y9 t# k' J9 K: T
a4 S5 D' r# _$ L+ J8 V# M0 j} |
|