|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- B. |$ Q8 A* G( f
5 m% Q+ r3 O3 ]% M( q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! T5 i; i4 W' W5 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# m+ ?+ _/ i6 Y0 \9 p& {0 Q) x2 _swarm.SignatureNotFoundException
+ H; j6 N+ l, t4 } at swarm.Selector.<init>(Selector.java:76)
, u [/ H- [ y% O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- X1 J* M2 v7 d& e5 Y at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 q2 S0 u( r `0 Z2 H9 Q; T9 v ?$ ~* l
O9 d" W( C6 A0 w! O6 oimport swarm.objectbase.SwarmImpl;" V1 b& M5 Q( y4 s! {. i. f9 i
import swarm.objectbase.Swarm;' u6 u5 a0 B+ W2 v1 F2 C) E# C
import swarm.activity.ScheduleImpl;
* N, X7 a) C! b7 @& g: Nimport swarm.activity.Activity;
. C' o/ f( U& R1 j- @import swarm.activity.ActionGroupImpl;
# E5 y3 ?; Y( Z6 w) jimport swarm.collections.ListImpl;
# M B, f7 Q/ V; R3 m( Z1 P( O! Rimport swarm.defobj.Zone; . l4 t, _( [& g* g# }* V4 ?
import swarm.Globals;+ U1 H# E. \0 d# T7 Z }
import swarm.Selector;) {: O) ] B- Q: Q v r; {5 R
import swarm.activity.ActionGroup; ) v) b- \: v6 J! x. `
class Agent {
' `) Z3 s/ q: W$ E char id;9 S( b9 Z2 u% @$ R% @
$ l, {. E4 B( ?+ G
Agent(char id) {
4 g# w( V* h/ B! {) u. ? this.id = id;
- ?( X; a* i( c5 N! V }+ n% @) |5 Z+ V: y3 _
" x" T" a6 a8 H' ? \* q: I public void agentStep() {. r3 ?+ T" `& Z7 l
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 O7 t8 Q7 Z1 q2 R) ~, f8 L }9 U+ n: ?9 {1 l$ w5 U( v4 H" z' G
}
. }7 K; |7 s3 u7 c' T+ y4 X, v1 O2 y k7 L: S
public class ActionGroupDemo extends SwarmImpl {
0 J& k- @6 a8 W- T/ ^' M3 X ScheduleImpl schedule;2 K3 N# d# [5 X# c, l
ActionGroupImpl actionGroup;( ~% {; H: q5 r6 _# v2 |+ `: B& V8 ~
ListImpl list;, } t$ C8 R+ I
char Id = 'a';
3 D2 t0 S+ t4 f( ]8 c! j* E: h0 Y' }3 O
ActionGroupDemo(Zone aZone) {
9 j7 I* o6 L7 v, Q. ] super(aZone);
3 U( p/ g/ \. l- S3 @3 J) k list = new ListImpl(aZone);, b1 N6 U, q3 K& Q( P, G
swarmSetp();% ?/ Q7 X/ G) V6 p
actionGroup = new ActionGroupImpl(aZone);
/ V" w5 _9 S' @ A schedule = new ScheduleImpl(aZone);/ P2 a, _9 R8 s6 ~" }" y
try {
% R# N3 _7 _/ K( {( L Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 s6 Y9 o3 M: N' ^" r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 S4 I- z- H2 K/ d
7 B& e$ C/ x9 [' e; t$ ` actionGroup.createActionForEach$message(list, agentSel);
6 q$ u% t: K- T7 j8 M8 D y) M actionGroup.createActionTo$message(this, swarmSel);% N- V' p" T! f( y
schedule.at$createAction(0, actionGroup);+ v8 c# t! z9 ^4 v
schedule.at$createAction(1, actionGroup);( N2 }6 ~( B G
schedule.at$createAction(2, actionGroup);) ]& s# A+ m) K3 E/ j8 s- i( S9 p# q- }
+ {* q1 y3 k3 o } catch (Exception e) {" z8 D, R, Q5 y5 x+ V
e.printStackTrace(System.err);8 O0 M' |5 p0 i7 Z; n
//System.out.println(e);
9 x% ~" G+ y6 M) {0 ~7 o7 c. T System.exit(1);
, K0 r7 G- `& n8 U) b) R% d }/ f; \$ J0 k7 L! c; x% f0 h$ W
5 u4 a1 \* d; M2 G5 d) g6 H1 R$ i3 U/ k: H+ ^: N$ [
}
$ V! ?" b, U q2 b a7 H8 R) w# X" G, t" i& Z$ ]' a' i0 l
private void swarmSetp() {' D" \% M" w9 v8 t
list.addLast(new Agent(Id));
1 H) o0 J* o" \ Id++;" a% x8 @# M4 S, u+ k. ~/ o
}5 A* V) ^+ W! S2 m) J- x/ d
: h1 K4 r( s ^5 n
public Activity activateIn(Swarm context) {
% t+ |9 P* A) S9 y& R5 H* r super.activateIn(context);! P6 t% G, ~# ?" L# q! ^
schedule.activateIn(this);% n) W% u" T+ b1 x4 s6 O2 R
return getActivity();
1 |0 o. Y- m+ e }
i3 [6 a/ I; ]; s' P
2 I+ @+ K* x- U1 Y' s public static void main(String[] args) {
5 k4 W+ [7 T5 ^4 z, j- [ Q) D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% Y1 K' k' h, C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* ?% z" s" C0 }8 u swarms.buildObjects();
. r- v% `+ T& n7 n/ Q swarms.buildActions();. y: i; Y$ ~3 G. i# \3 E; M3 r
swarms.activateIn(null).run();0 z2 N* B1 S4 n; l
}! z% K! I% R( B) q) `
; q- A# v7 L# {& r _} |
|