|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + ?% F3 T5 D" z0 H/ c y+ k
+ u! ^. \/ M$ w1 F$ v, o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* `7 I9 s2 h% r# |/ @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 k: `7 Q2 x! R+ k0 U. q
swarm.SignatureNotFoundException. I; i& _; V/ j8 F
at swarm.Selector.<init>(Selector.java:76)
* V+ c; w$ F& K; U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 n: a% r3 n4 O
at ActionGroupDemo.main(ActionGroupDemo.java:67)% _" }& B* Y1 z7 g9 J( Y
T, r N# U; w! f# Z4 c9 f2 Y" j! q6 T$ d/ L% a/ p Q
import swarm.objectbase.SwarmImpl;
+ e; r- D6 b6 y1 dimport swarm.objectbase.Swarm;
; a9 o9 X, C* L% v n5 Limport swarm.activity.ScheduleImpl;* y1 N6 ]$ a% ?8 M" |2 Z
import swarm.activity.Activity;/ I/ c* X/ U8 U' G& C3 ~3 |
import swarm.activity.ActionGroupImpl;! C9 O3 w y, s6 }: t
import swarm.collections.ListImpl;% D) N7 o- z1 Z. c% s2 T+ x W: Q b6 ~6 k
import swarm.defobj.Zone; ( `/ ^! ^4 J. \) q
import swarm.Globals;
' N( Q% n7 |& W' U0 x5 n/ wimport swarm.Selector;
8 Y5 G1 R9 Z8 t! I) Aimport swarm.activity.ActionGroup; 1 a' ?* E" J/ K7 L0 ?
class Agent {
& S. v4 j6 c9 F# s char id;& L/ P1 ^# M; X! {: E: D
+ Y5 d c0 X2 H6 [. m2 b
Agent(char id) {
7 K, u9 L( {9 g) k* Z- U; m% ] this.id = id;
3 i9 y3 ^$ J* u" g }2 |- n& Z8 q: \. o- A
# q+ [& n0 m; Y
public void agentStep() {" E0 v8 M) n3 `9 M+ L. i" o
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 a" l# v- P0 j% f; {' u; v }
* A$ [/ b8 ~7 u}- @6 t: K' P$ K7 r' s- A
* z9 ]' u) I$ p# j. @7 M
public class ActionGroupDemo extends SwarmImpl {4 L& H c4 [/ J- o2 q( u
ScheduleImpl schedule;& y/ ?9 B% C& q- U9 Y: L: q
ActionGroupImpl actionGroup;+ d! b: I. i( W: X/ c
ListImpl list;' l( w' ^: u/ `5 _
char Id = 'a';
; N. {8 y. H1 y4 |" o
c* }+ l9 z/ ^0 b, K0 ?, I ActionGroupDemo(Zone aZone) {
7 w6 B0 ] B, Y" \3 F# t super(aZone);9 q; o$ Q8 Y6 J8 z* f, b& V+ U* D8 c
list = new ListImpl(aZone);. K8 z. J6 C/ A' i2 D9 L2 D
swarmSetp();1 y$ |. R; T' m7 q2 x# F& j
actionGroup = new ActionGroupImpl(aZone);
5 d5 B" i' X# ~ schedule = new ScheduleImpl(aZone);
6 S: i0 k, U+ Y, t, ^9 g% y9 f try {" n' c! C. T3 s* G3 \: N$ r
Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 J' v$ X; J- g @/ w$ }# Q$ \3 ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 r3 r+ D# [- z) l+ z
& E: ~: d* @- P: M( G
actionGroup.createActionForEach$message(list, agentSel);3 ~( ~' o. G1 z' @
actionGroup.createActionTo$message(this, swarmSel);/ E7 p F% z' L H; e5 u; S! r+ t
schedule.at$createAction(0, actionGroup);
3 c: q. f) z3 K2 L( _' U schedule.at$createAction(1, actionGroup);
, @4 X: @' H! B# C# m schedule.at$createAction(2, actionGroup);. r; Q: R9 }; [
- R- D! z2 Z6 h2 K: ] } catch (Exception e) {$ a+ K. E2 R( U# ]+ W% g
e.printStackTrace(System.err);
, x& t+ y) F' j) |- y //System.out.println(e);/ P. W7 N' x9 b3 h- J
System.exit(1);
6 `) U/ V# W, K# q6 q6 Y) U: D8 }0 m% g }% q; W8 e# G/ L
' m! {3 u8 D+ r) b5 i
! C! I m Z) Q" U* v' \ }
# k/ t# N" q" a1 L) a" f, ^, ^$ D6 c! H1 {, D
private void swarmSetp() {* _0 @( ]9 ?$ l4 U, H; I4 o7 ~
list.addLast(new Agent(Id));% q1 {% N4 ~0 {8 x0 |
Id++;7 w" N% L+ ^/ l* V
}5 \2 H5 [& S: A1 b1 [* I8 b+ \
9 X. C* n5 ]: F- w' L4 b- Z0 F1 `
public Activity activateIn(Swarm context) {: Z$ S1 Q& \# k t
super.activateIn(context);
: k3 h2 Y8 b5 `" T7 O6 k' F! P" B schedule.activateIn(this);
9 j* }. @& I. k+ D return getActivity();- H3 |& O5 ^7 }0 f x3 O, J. r
}! N0 K w" c$ C( i
9 M, H# @. H* a& F3 ?8 ^# ~6 B
public static void main(String[] args) {
& x7 z/ ^$ Z* @9 m! A! o- Q5 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: _" Q5 {" H! y$ E) r0 P2 z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" Y7 T+ M6 \2 i swarms.buildObjects();' @2 P9 p' ]8 m
swarms.buildActions();
( D+ \9 r% ?3 t, N& n8 C; t6 J swarms.activateIn(null).run();
2 k+ ?# a B, f, n }
9 V+ { L0 f$ z& `' H6 J( c% |( l/ g2 J; L5 ^, G
} |
|