|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 K4 O! q0 E8 R7 Q$ N. t8 o
, y7 a* V6 [+ T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" c' a. T) u/ b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 G0 D# w" e% a# ~swarm.SignatureNotFoundException" A/ q5 D! D+ @& F ^4 {7 |, V+ G' N
at swarm.Selector.<init>(Selector.java:76)
9 Y# u: u& ~1 i. k4 m at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 U0 }0 E2 K: O V& A8 C5 G5 P& G
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! p1 g# v3 l! Y! S2 v2 ?
5 G7 `( p8 |7 d- w9 r" H: r3 b5 O( w( V# D
import swarm.objectbase.SwarmImpl;4 D2 |1 z) B+ V9 b+ a' l& h
import swarm.objectbase.Swarm;
+ ~! ?, X0 j8 A% y1 ximport swarm.activity.ScheduleImpl;% c7 k- U2 f, `! S
import swarm.activity.Activity;
9 P$ l3 o! f7 v! D& M. p' {import swarm.activity.ActionGroupImpl;9 s5 K \0 p7 [6 [3 P
import swarm.collections.ListImpl;
# ?8 a; Z- Q T$ l* _" e# K$ V7 n) \3 Simport swarm.defobj.Zone; 6 I$ T; x) u$ r- @5 ?* a+ }0 d
import swarm.Globals;$ v$ C- F+ R7 s
import swarm.Selector;$ i: Z+ Z7 P' _( F1 r& b) ^
import swarm.activity.ActionGroup; / X% u% s, F2 j$ d3 L* D( ^
class Agent {/ H' q, e- o0 b9 Y! f
char id;
: Y2 W9 \8 K! I/ w, M* S' N, e% e5 a2 p, n! e! i' A
Agent(char id) {* U' S4 ]9 S! S
this.id = id;
8 ^: B$ ?& V) k! a5 M9 N; K* q }# {# j) T/ m' e' I# b% R, I( [
9 v( ^. ~; e/ P6 {% j' p public void agentStep() {7 _6 ?" e- U& c; H$ D. k4 Y$ D9 f
System.out.println(id + ":" + Globals.env.getCurrentTime());) J5 ^& M' K k2 Y
}
5 H' T" m. h' G7 g}
7 G y0 H! C Y( z* k
( G) x* ^" [4 e% K$ k* Ppublic class ActionGroupDemo extends SwarmImpl {$ {2 {' b- c, z" s. D0 S+ Q
ScheduleImpl schedule;
5 j" L5 o" P" Q9 Z" i ActionGroupImpl actionGroup;( o# W9 \% n. f D# y; r' n* D
ListImpl list;& Z+ P9 l1 T% n, G' [
char Id = 'a'; l! ^* ~3 T; v2 |4 K9 P
1 k# J$ ^9 D Y: ?
ActionGroupDemo(Zone aZone) {
2 c |8 `: C2 c/ a% Z% J, Z/ O" \7 Z super(aZone);
9 T, I n1 ?1 K( g) k5 j& J$ o. d list = new ListImpl(aZone);
/ k: e u9 }' p" P swarmSetp();
: Q3 B4 [! Z$ Q T2 [+ g: U actionGroup = new ActionGroupImpl(aZone);/ e# P8 P, L' @0 U- i# x& y
schedule = new ScheduleImpl(aZone);
# n: X& T; w4 w( W, D7 `+ x" H try {
2 s% i. U0 W; W* M' E; }9 ^+ p Selector agentSel = new Selector(Agent.class, "agentStep", false);, L1 R- B6 Q9 v+ g, M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, ]& F7 \- E- A# z& P# {# Y 2 L/ o& D% t% B
actionGroup.createActionForEach$message(list, agentSel);
s; X% T) K1 @& m actionGroup.createActionTo$message(this, swarmSel);- u: A, R' q) D. c8 l
schedule.at$createAction(0, actionGroup);$ v( n0 j# l; X4 R! ?! a0 W$ w6 k
schedule.at$createAction(1, actionGroup);
( |4 M$ C1 W) [0 z1 r! ` Q schedule.at$createAction(2, actionGroup);$ h7 N( V! m4 M( {' N6 k3 g
* o2 n! u3 y& _, o" A' W3 r
} catch (Exception e) {2 ?$ |5 H. n. ]. d* y0 l5 H+ ^1 w
e.printStackTrace(System.err);
8 ^1 ]/ P3 i. u* g //System.out.println(e);
- i# Y; h6 H0 O' R6 F1 \ System.exit(1);
$ q* e. X" `# t, a }& V% V, s6 @8 |/ g5 l
4 B; y p& M9 p
5 a4 \9 J* O- Y0 F: h
}+ m# A- I! _6 h- [
6 m% y0 N5 ]1 _. S private void swarmSetp() {" A' V- v* T! ]. s. `5 _, X
list.addLast(new Agent(Id));
8 U0 g" O0 ~+ @+ l o* ~ Id++;
7 z+ D: M# Q7 S7 @) A }3 _$ c5 y. a+ ]( v
( Y# y+ e* X, K2 W1 @+ } public Activity activateIn(Swarm context) {- W% @) \8 V$ B- \
super.activateIn(context);1 s* L7 Y0 w& M4 f
schedule.activateIn(this);
* E9 y" p& J) q" S1 ^8 M2 \+ g return getActivity();# P) q3 m) H. U, z0 D! i
}
2 J$ w5 p+ T7 t5 @, F% P' v: ]+ A
public static void main(String[] args) {6 \+ G& N9 W6 c9 ?. G) y: f; T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( `7 M4 ]3 S& [6 r$ [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 |, W6 F0 ` l
swarms.buildObjects();
# f2 @7 M% a) K9 e swarms.buildActions();
* Q' b; D4 y) D% I$ r/ v. ~+ n, v swarms.activateIn(null).run();
0 }& Z1 p/ X/ k/ e! c% W }
& z; C3 ?& m. P" G; i0 \
+ u0 ]: |7 X3 W& O$ ~} |
|