|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! B9 R% y; `: D! L$ @
" q- b1 g2 _$ E( m' m. _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# h' T8 F+ {' {, D) }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 D4 S# `# Y6 s F W- h6 Hswarm.SignatureNotFoundException
3 ]- ?* d1 ]% a, t/ I1 h at swarm.Selector.<init>(Selector.java:76)
: c3 V5 l5 P/ r8 V* {& X at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ L2 `# ~: t( n, S5 J! g at ActionGroupDemo.main(ActionGroupDemo.java:67)9 u3 G( s6 f o1 w6 L6 S
6 i& d4 i4 i6 f# Q: @; t( S, x5 o6 G; d& L! V
import swarm.objectbase.SwarmImpl;
2 W3 p5 X2 `: h4 l- bimport swarm.objectbase.Swarm;
% V! s5 F7 h& C$ d9 T8 cimport swarm.activity.ScheduleImpl;
/ h+ q; T2 m. [import swarm.activity.Activity;3 e2 v5 `3 ]# D8 \$ Q) p, q0 x
import swarm.activity.ActionGroupImpl;
# H% R. \' M/ F: @' g0 ?import swarm.collections.ListImpl;# ?: i4 z' @& l9 H* P
import swarm.defobj.Zone;
0 c% ^* U8 N' {$ i Cimport swarm.Globals;% }( n: ]# u% ^8 Y% V
import swarm.Selector;& E7 w U+ h: g/ J
import swarm.activity.ActionGroup; % F. i6 U) T* g- n3 A, E/ T/ K
class Agent {* q; U" _2 o" o$ u7 [) L: p
char id;% o9 M }2 c- ~1 g; a# w- ~
1 V/ i' @' m1 Z- x; `4 B4 E9 z
Agent(char id) {& w L0 f" e9 E' o9 p5 K( ^4 U
this.id = id;
2 ?4 H/ |; R" } }
4 C5 A! I3 w8 b# l. G# l7 G+ y! T+ |% ]- l' T* R y5 Q8 i
public void agentStep() {" A$ x5 g' Y- r; L3 m4 g* q
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 X/ B$ c- V+ ~5 M8 }7 X% ^8 j9 ?& Q }
7 U- }! @1 X5 O' t& v9 B5 E( H}+ H1 O# i4 a9 m# }
. l8 F' I2 y) [, \public class ActionGroupDemo extends SwarmImpl {
- z/ V4 R$ \/ n ScheduleImpl schedule;
' N! l |7 {. p; V& q1 q; U" k8 ~ ActionGroupImpl actionGroup;
0 }& h/ l1 h8 E/ m( p5 \! h4 l' t ListImpl list;, ?$ ?" o% B% I; c [, n
char Id = 'a';
3 i& J6 y! o# v5 p9 J) ^0 f! h
: S( H! N& R) F9 ?" o$ I# R& _# e ActionGroupDemo(Zone aZone) {
' `" P% m1 Q9 I# i3 y2 k3 ]- |/ Y super(aZone);0 y( I9 ~4 [% U7 }" n5 {
list = new ListImpl(aZone);$ G# v" i7 u0 A' \, _/ n
swarmSetp();
; T, i' L1 ~ L actionGroup = new ActionGroupImpl(aZone);
6 y5 \% {, S2 a x- u, O, | schedule = new ScheduleImpl(aZone);
2 b7 u% P8 [3 }6 v3 E; A2 n: y2 h try { m. `' r; z g. m, {
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( P, B0 o& @" ]3 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) X$ q( m3 q5 l* W
! a! z- `- b i/ |9 Y actionGroup.createActionForEach$message(list, agentSel);
2 C, j2 ]9 w1 j5 Q% f" j actionGroup.createActionTo$message(this, swarmSel);' r- b4 ]7 g! B6 `5 S: _
schedule.at$createAction(0, actionGroup);8 Z1 v- S9 Q4 U# { O4 R
schedule.at$createAction(1, actionGroup);
3 J" }! E, s0 \9 i2 l schedule.at$createAction(2, actionGroup);
9 L) ]% i+ M" ~, q/ A
& N' s1 c; _3 o- j) B7 T } catch (Exception e) {
; _/ y k8 t/ o8 c C8 d& j e.printStackTrace(System.err);
5 ~9 Z; `$ f1 P: Z, P/ H9 R6 u //System.out.println(e);
1 X, ^0 \$ p$ v# u, ^9 C9 c System.exit(1);
- O8 S( a* G, V; H4 f7 F }: r! @8 E6 T2 F+ V6 c
, u! S0 t& c; X9 n Q9 h u. n8 D; c' q7 [ Q/ ~8 K) {
}
9 e2 W0 K! }1 F, N$ Q
* f; L1 Y1 W- ]' o9 Y private void swarmSetp() {
& d2 V2 C. O1 {/ x) [ list.addLast(new Agent(Id));# v. W$ g, ^. J7 s$ u: H
Id++;* t$ V& ]( r- e% N8 @; s1 F
}
$ a- \' R9 o1 i2 c& l l/ j
b, j8 O# c: x. S+ N public Activity activateIn(Swarm context) {
, U6 Q; s% f/ q6 I super.activateIn(context);
! i5 j: V$ b+ E6 l7 d schedule.activateIn(this);2 s9 z" s3 a& B9 j. l
return getActivity();
9 V ?! O7 B# A. V& b }% i1 w$ {5 C: F% \: d# t
1 P# f/ Z4 v" X) i' O1 [6 w public static void main(String[] args) {7 W9 H {. o& P P# B9 }# Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& M+ [ D1 y8 y3 ?3 w3 h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ R4 a% \, T& A1 H
swarms.buildObjects();
5 t& H4 q) Q6 Y6 ] swarms.buildActions();
5 G" ?: x7 E5 F* Z5 C swarms.activateIn(null).run();
+ j1 R4 u" p% [- n* P: Y0 T }
* Y' N# |$ A: g8 t, Z. ]
8 @$ l8 h5 p. W: s1 t} |
|