|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 c3 g7 w1 |7 ~' r7 Q( x: n1 K7 U) k0 R; P8 y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ Y9 `! w2 Y5 c0 K" D& X! M5 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' I+ |+ ~$ Q0 O$ W. gswarm.SignatureNotFoundException
. i1 l7 s5 ~ F3 O! d8 o at swarm.Selector.<init>(Selector.java:76)- K7 @% \; E- a$ P' m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# i [) N& r+ l1 D! ^; m, y
at ActionGroupDemo.main(ActionGroupDemo.java:67)- D- J/ C; H5 i
# p! A; ?/ \2 ~, p( ?8 Z- T- P8 S6 f' L5 K* g1 K8 S4 Y
import swarm.objectbase.SwarmImpl;! f7 k* h. j$ G$ ~5 z: P
import swarm.objectbase.Swarm;! y6 C3 F U8 o" y2 o. L5 P* X& Y! E
import swarm.activity.ScheduleImpl;
- i$ E1 t S+ c) F3 uimport swarm.activity.Activity;, ` U# D8 J0 Z. B2 F3 u% d
import swarm.activity.ActionGroupImpl;* u) h# c3 s w3 w0 t
import swarm.collections.ListImpl;) g: n* v5 Z. y) w
import swarm.defobj.Zone; ( X6 }4 f: r' _, i5 K
import swarm.Globals;
, L6 F" O/ k* E wimport swarm.Selector;* I, u( J _, D6 s# `
import swarm.activity.ActionGroup; 6 c0 t. A2 L. x5 b& J3 Y1 r% b
class Agent {8 o0 Z0 e3 E7 U1 G4 ~% V1 x
char id;
1 ]* r. x+ h4 [; V: ^+ m/ z5 Z {8 U9 L- ~ ]0 S4 K
Agent(char id) {& j' L4 M, E3 H$ l& c
this.id = id;
( F- K& c* S: D }* A- U$ I# `) I9 }3 |2 Y
3 w9 ~' e: \) d( R( n
public void agentStep() {/ |9 D; a+ _& W, w, J& v
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 e! `# O* L9 j8 B& w }
9 d8 p6 r- \8 j8 \# Y}7 x; s. v- C3 f% q
6 |1 J( v7 U5 x9 z: O% spublic class ActionGroupDemo extends SwarmImpl {
+ S3 \' h$ H, {0 N' I- r4 V) X ScheduleImpl schedule;7 p- m- a, C* `. [& a( e+ M7 t* `1 e. D
ActionGroupImpl actionGroup;) G4 R& E# B0 r8 F2 q
ListImpl list;
- A8 S* ]9 E& z" k char Id = 'a'; e$ s- x$ @6 [5 b% X' ^9 |: }9 d
' S/ D9 o$ q6 r+ H9 h# z ActionGroupDemo(Zone aZone) {* ~$ A3 h- C7 P3 m
super(aZone);' z7 J( z0 M4 S0 h3 e \) A
list = new ListImpl(aZone);2 s( e) @3 R3 a; G. V( k& y
swarmSetp();6 ]$ @, x6 V( ?
actionGroup = new ActionGroupImpl(aZone);
/ c. P9 z y8 k' l. V% z schedule = new ScheduleImpl(aZone);
& d$ [4 z6 @# O% S9 A# m try {4 |4 [- i" I% i, ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& M& x' Q' A; P: m! D2 Y" W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' Q( M/ t9 u1 ~
& _6 V. u# ` I4 h& ] actionGroup.createActionForEach$message(list, agentSel);
3 d t y: J5 n, W actionGroup.createActionTo$message(this, swarmSel);
+ }0 Q6 n6 Q9 o) g4 x8 g schedule.at$createAction(0, actionGroup);
0 a2 e3 v: l; u schedule.at$createAction(1, actionGroup);
' o8 ]- `, \- X0 v# {/ E/ B* z$ j schedule.at$createAction(2, actionGroup);
1 t% b/ `4 D6 F
/ \) D; f! J" f } catch (Exception e) {
/ P5 J* K4 I% h# ] e.printStackTrace(System.err);
5 q% s' U6 f. q; V //System.out.println(e);( Q/ n# x6 h/ a
System.exit(1);
% \& z8 ^+ V; G }: r0 t: I9 B" i* n* U
6 V& w7 e" J8 K s) Q( F k& l5 ~# ^
a2 U( ^ l' W! w% Z }
9 A: V. q j/ c! L) H4 j3 M+ _3 k/ ?, p- l: J
private void swarmSetp() {2 l% Z7 H$ X& u {. l; k
list.addLast(new Agent(Id));4 y9 ]# y; q+ f- ]- |$ b, u9 z
Id++;
: p1 a. g( e k" P3 v }
$ ?6 F6 }0 y8 `! ^2 E4 y+ n, i6 B; U/ e$ o2 b. Y1 q4 X2 W
public Activity activateIn(Swarm context) {
3 ]6 }" d7 @6 x% R ^ super.activateIn(context);
2 k! X( j% G. s. J+ u schedule.activateIn(this);
/ C& H2 M Z4 B return getActivity();$ r! C* s7 R) v# I6 S9 j
} w6 F! M) l! v
4 v/ ]0 n& P0 p& E3 [5 Y
public static void main(String[] args) {) i4 {- n3 i7 B$ b
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ O( H: b; X( [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 r | {2 V8 V2 w
swarms.buildObjects();& k( D9 P0 N5 I3 s7 _5 n3 _7 h
swarms.buildActions();
$ g, C( u; R" e t2 \- U c) K swarms.activateIn(null).run();) [8 I0 b. e; t( ]
}! l* g- B- L+ D, V
! y }" I7 B; t8 q} |
|