|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 V2 j0 d& N1 [" V
' G8 c4 P4 t; p3 x) |9 `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 l! D5 F& ]# @1 h) p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. Q( ~6 Z( c2 g& b3 E# \' [1 u
swarm.SignatureNotFoundException
0 p1 J0 n. o6 U# p8 ` at swarm.Selector.<init>(Selector.java:76)
4 j- U& b+ W0 A5 i/ G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ F: y1 n& G( Y; Y9 k7 w) |) J. s4 _ at ActionGroupDemo.main(ActionGroupDemo.java:67)/ v5 _, p7 b& J0 y% ?
- _; N0 t5 }: U ^1 p+ k
* A& o/ t8 l& ?; ^import swarm.objectbase.SwarmImpl;9 ]. Z& G" `' ~' y7 t
import swarm.objectbase.Swarm;
5 {# }$ u$ P1 X8 i' S, ~3 F6 Oimport swarm.activity.ScheduleImpl;
, A; U9 s: G9 {' a4 b0 [5 yimport swarm.activity.Activity;
! d) @4 Y. N) {( ~import swarm.activity.ActionGroupImpl;
! C- o: {$ a' a$ e2 M1 nimport swarm.collections.ListImpl;* y8 W8 [; c; k
import swarm.defobj.Zone; 6 H! b+ v& m# i& D* j1 S, X, ^! [1 M
import swarm.Globals;
5 ~+ n. i0 K& b( K Wimport swarm.Selector;
2 o4 v) p7 K! Z8 g: V+ Oimport swarm.activity.ActionGroup; 3 l5 f6 ^7 z$ ^/ Y2 Y, @
class Agent {# t! D( a5 I8 ~- o
char id;
! f! a+ M# Z" I: O4 C
+ s. n5 P* ~, r Agent(char id) {8 b2 l3 ]- S4 D% M
this.id = id;6 w7 d5 g+ ^3 C/ C" l
}' S& e( \. e) @) Y' ~
/ Z" A. w1 R5 E; T. q# z4 D- u public void agentStep() {
" T6 Q9 E( P$ N5 o: y( Q) n. t System.out.println(id + ":" + Globals.env.getCurrentTime());% _) C5 [9 L$ g7 w
}
! R2 W. h2 d ^( i& ~8 F6 w6 j} y! e$ v5 ]" j- T6 Q" H
! L G0 |4 l+ u4 O; y7 H- i D/ t
public class ActionGroupDemo extends SwarmImpl {" z9 c7 H& w5 p: J) {& u+ O
ScheduleImpl schedule;: n2 V0 P7 q4 X0 O# q5 {; }2 I
ActionGroupImpl actionGroup;
" a- ^$ U: f2 Z' k ListImpl list;' W6 D% Z" {! _. \' b% F
char Id = 'a';
- P" w" C1 }! F# w9 ~
5 r# J3 p' O! `$ c1 J0 Z" l ActionGroupDemo(Zone aZone) {4 j7 N! J) ~/ V3 Z& e) H, \, x
super(aZone);& o" l* B( A3 N" _' M
list = new ListImpl(aZone);; ]9 x" D1 d6 P |, W( d; t
swarmSetp();7 r S) H0 R) U7 X- K/ w2 `3 O& t
actionGroup = new ActionGroupImpl(aZone);6 x, ]/ G+ b5 _3 |( B
schedule = new ScheduleImpl(aZone);& b# H% g) M3 @' h4 P
try { p$ X1 D5 |2 n+ n: a
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 X: v/ e5 `- H2 ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 t/ f. o; ^# P! m# j$ P# i
( ]5 Q7 X) O, f: o8 t! N actionGroup.createActionForEach$message(list, agentSel);
! \0 X! ~ H0 i0 q1 Y actionGroup.createActionTo$message(this, swarmSel);
( j2 L J6 P/ G1 O! G schedule.at$createAction(0, actionGroup);% ?- s% X8 u! |1 g! J- x' B( w
schedule.at$createAction(1, actionGroup);
* o" {" ~ A( o3 w- f% @+ C schedule.at$createAction(2, actionGroup);
# ~$ H0 ^% t+ V$ M6 l9 P; R' B: ~& c+ [+ |
} catch (Exception e) {2 _0 j* I& U. L) _8 y+ @9 {1 s
e.printStackTrace(System.err);
/ ?5 ]0 A' Q( B" C5 P9 d2 V9 w1 ? //System.out.println(e);$ D; U' A( T1 P [" M$ X
System.exit(1);+ s& T/ d4 P# C
}9 y1 b, i1 f: k/ A: g6 U: M1 E
; }4 x# n8 t: ~2 [( g
$ [. w& B$ B- i" |: X- M
}
" f7 c# y7 R- q! y2 i
& p7 d( T3 F5 A" W private void swarmSetp() {4 z, K) g) V: V! s7 X) d$ g
list.addLast(new Agent(Id));5 i- q N2 M9 j, I8 r1 o8 h
Id++;- y1 s. n, u: j# N* a# L
}
1 Y1 Z* B/ S0 r8 x" p
6 M% t' Z6 p: Z- W7 F- u% d public Activity activateIn(Swarm context) {
/ t( O* \ a3 C' F% @3 t8 t super.activateIn(context);
+ Z5 K9 |! d- w: P schedule.activateIn(this);
* I( c, v8 r+ z- y return getActivity();: i; `& G' _ ^0 v" A6 z6 q
}
( O* r) u: U4 ~
8 d: r6 }: @0 d: v" [& y public static void main(String[] args) {
' P' T- A" C' P" `4 X! N! u& N: Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 j; t. Q% L q7 M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. L1 H' h, Q0 c3 l; D% M, Q/ O$ L swarms.buildObjects();& x. V+ D& w9 K* r
swarms.buildActions();$ u: r p1 L3 v, G5 Z$ ~* ]
swarms.activateIn(null).run();
4 a, @6 j o/ F5 Q0 }: C }' h( U& P. l( ?, i0 Q; ]$ w7 X7 `* J" ]
5 H( O0 J* P/ q} |
|