|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * Z! E1 p$ R7 r, _( ]8 n$ L7 _
$ F9 G8 ~- a0 `' i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& z* R" ~1 Q/ l9 D) ?6 A' m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 q. z( t0 {" S& O
swarm.SignatureNotFoundException
$ [5 j% D. w$ v5 d2 O at swarm.Selector.<init>(Selector.java:76)
+ \% O" X. w( x( W. x9 } at ActionGroupDemo.<init>(ActionGroupDemo.java:37) p. A& I: K i8 w' C
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 @; J1 z3 K' y
4 } e! d. ~ E
3 b$ x. I3 @+ K- qimport swarm.objectbase.SwarmImpl;0 b# m* S' Z4 |$ W1 j
import swarm.objectbase.Swarm;, D9 H# ]- {* h& ^+ b
import swarm.activity.ScheduleImpl;
4 ^6 R9 \8 k9 _' j5 ]import swarm.activity.Activity;4 p* W5 G- s$ a* [3 F6 k
import swarm.activity.ActionGroupImpl;9 V, d3 [" p c$ e
import swarm.collections.ListImpl;
" N8 e# y) K+ w# Simport swarm.defobj.Zone;
( o" ^: T. c# Yimport swarm.Globals;
" V9 w) F; n7 V1 f5 v% _import swarm.Selector;
9 K/ j# S8 @: T- i9 A( _7 Z; P( fimport swarm.activity.ActionGroup;
3 D% A* w4 R2 f! i9 O0 C1 Cclass Agent {
% e; R" x& w% \, P3 f+ q9 T4 J& [ char id;1 u9 F$ k+ m, c$ d
* u! ?1 g7 Z# E1 R Agent(char id) {& x% O. ]$ z* F' G# y6 z A' s
this.id = id;- W% ]$ X% T" ?0 N) ]+ e
}
0 i! P9 I5 ]0 D; _; I6 A v0 M) h& v: U# X. X; Q) D( `9 N
public void agentStep() {% `7 Z' o w$ b. K! ^" Q, H
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 i4 X5 a0 G" v1 H \9 f }
" q* l* c z. u7 Z& Q- L0 F}2 D/ {+ M3 J q8 a
6 G' @+ D; \3 T1 tpublic class ActionGroupDemo extends SwarmImpl {" I ?8 Z ^. G) q" b
ScheduleImpl schedule;4 y7 ~$ q8 @( }* o. v
ActionGroupImpl actionGroup;/ ] F4 U! S+ ?5 D9 ]$ S
ListImpl list;
0 W P6 p& |5 h# P) y char Id = 'a';% T/ B9 |( E: E r4 ~
! U% y8 Z% M- }- A ActionGroupDemo(Zone aZone) {
% f# f- z, @( g# y' p super(aZone);. Z. K. t+ A' J& `
list = new ListImpl(aZone);& z! a1 d% G0 c. V B5 i
swarmSetp();
; x; W- } i* X% I' v* ?- R/ g actionGroup = new ActionGroupImpl(aZone);
9 E% F' G# N4 U7 F' A- t x$ v schedule = new ScheduleImpl(aZone);( ~& h' b1 u. q+ N; x$ F
try {7 `' y; J1 o% j% r0 ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 n' _: G+ M# w7 o( h4 Y8 X Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 g/ b6 \/ O: u0 ]
6 e: P) F1 u# }2 G; O- F
actionGroup.createActionForEach$message(list, agentSel);" s0 W8 w( s- s6 n
actionGroup.createActionTo$message(this, swarmSel);/ }4 L; R. T& A2 P9 u+ ]
schedule.at$createAction(0, actionGroup);& M# l6 @9 @6 R# p) h+ c
schedule.at$createAction(1, actionGroup);2 W) ^# z S" }3 k
schedule.at$createAction(2, actionGroup);
% i# R- [6 x, J/ u; d* z3 M
- ?: Z" ?- d' u: d6 d0 ?/ ~ } catch (Exception e) {
" s8 N3 _- V, q- ^- J e.printStackTrace(System.err);
+ v" N+ k% I) S; g //System.out.println(e);3 c" _- p. @2 ^1 b! Q# A
System.exit(1);" x- L: R8 U1 s
}
6 y2 t6 w8 d( E* H7 {* \# l
6 i8 S7 i* u( A: u
3 d8 o) n6 F! c }
& B& \: ~5 ^/ k* g& X0 S, `5 O5 o! v) z7 F; x* k; G
private void swarmSetp() {$ j6 [$ k/ O( J) [
list.addLast(new Agent(Id));& P9 V. a' f, }) x- k2 c1 U
Id++;
& V3 a. f& B% M T% l1 z }
# z% d3 e" C; b$ s7 E( d
0 W: r: V$ t+ m public Activity activateIn(Swarm context) {
; l& P& \' u7 x! b super.activateIn(context);4 s# S- s0 j; K) C( g
schedule.activateIn(this);% Z; G G% i7 g8 V M: Y" O
return getActivity();
6 k4 B) m5 ]8 q ]5 ?1 M6 T }
0 F6 L9 J# T! x7 T: d1 w! H# `' B% f, n: U* Z j
public static void main(String[] args) {. f: ^8 \- x0 Y+ E* p* j2 k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 r" B/ r' m* Z/ D; M7 g/ e4 d2 V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 r( t& E# Y1 {2 o" t% M
swarms.buildObjects();+ X8 h; H+ ]* {9 h$ M+ P
swarms.buildActions();3 Q! F, X5 l6 s* T% \6 d8 p& Y. t
swarms.activateIn(null).run();
2 k# O) Q* E. X8 x' o9 B }
1 d% ? i5 `1 ?% n1 _9 A" }# p a a% r. l' K5 f
} |
|