|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) p ?3 [+ m e/ @3 y+ ]4 W& [0 J( I9 Y+ Q& A& n3 b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( C4 n7 V/ u/ V% E% J5 K# t# g1 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 S! _/ I9 \5 x/ S% ]2 ~
swarm.SignatureNotFoundException# p5 A* ]0 G+ R( S3 H) C
at swarm.Selector.<init>(Selector.java:76)
7 ?0 {) ?5 v/ w- n: r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' N. l& S7 p# V at ActionGroupDemo.main(ActionGroupDemo.java:67)
( u6 U4 c B4 u' x3 h1 ^3 a! w8 w, q& G+ M0 e% a; @
& j9 @: u, T9 d( Jimport swarm.objectbase.SwarmImpl;
( x# F: _5 k r1 _+ Uimport swarm.objectbase.Swarm;
, ]/ D2 R, w! W+ j1 i" timport swarm.activity.ScheduleImpl;
) ^: w& q3 h* e# x2 U5 Q. C7 mimport swarm.activity.Activity;
0 k6 f# p" b+ a# o1 U2 r" C; zimport swarm.activity.ActionGroupImpl;
# P; c0 c/ o% |% l( Aimport swarm.collections.ListImpl;
7 y" a$ A. F. e: W1 B u8 y& jimport swarm.defobj.Zone; 7 m, Y5 k/ U* x7 z. w
import swarm.Globals;+ l: x% j8 R2 g
import swarm.Selector;
# U; G9 n( d/ e& ~9 D1 L' A4 H; }import swarm.activity.ActionGroup; - |2 y# u) z1 b) l
class Agent {% u+ L/ y9 }2 W% O3 m( x3 U& M) l
char id;
5 Y0 X+ L0 i+ I
9 |! [; U0 D4 g9 \! r# ] Agent(char id) {
& k8 x6 S1 N# j this.id = id;
' s$ T& Q0 x! U% P* D }( F& \- H& r+ G1 o
7 [$ e. I( R: e" g
public void agentStep() {
" {8 S0 ]. {+ m3 |7 o' u/ i System.out.println(id + ":" + Globals.env.getCurrentTime());
3 _7 m4 ~& F+ f% Z }, D7 u( |, m) J: l$ ?$ B: p
}% t4 O% A7 y/ G( y
- g- }" _; k/ n* }; \; q( V3 Bpublic class ActionGroupDemo extends SwarmImpl {9 h; l' n K& w3 U# B$ F' ^) Y
ScheduleImpl schedule; `8 Z5 h F) R; ]4 j
ActionGroupImpl actionGroup;* y* x5 h8 y7 Y. Z0 ?3 U
ListImpl list;7 Y0 T6 w: W+ u$ g- w# E% j
char Id = 'a';
$ [; E6 r0 s# L! g$ h+ I. D! j% U7 y
3 C/ @9 q. n0 G. _/ F) T ActionGroupDemo(Zone aZone) {
( T7 x- G( a6 w9 o6 X9 m super(aZone);
/ L1 L9 F# v; I; { p& ^$ y list = new ListImpl(aZone);
0 \, }* p' g" c( \+ ~ swarmSetp();
$ D# i$ v- B+ {3 i2 s6 o actionGroup = new ActionGroupImpl(aZone);
* e' I. o# p2 r: \% s* r# K schedule = new ScheduleImpl(aZone);) E7 X# q8 l8 ^2 Z
try {" m- L3 V1 e# ^# K% L5 ~8 d6 s% v
Selector agentSel = new Selector(Agent.class, "agentStep", false);) v4 v" J8 l, R* j3 P4 v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 A! y' P( i: A7 |: ^
( P: i' i8 n, s2 d+ x9 F3 ~ actionGroup.createActionForEach$message(list, agentSel);8 K+ f: j4 B- V- L2 T
actionGroup.createActionTo$message(this, swarmSel);
- `1 ~5 N% R- \9 c schedule.at$createAction(0, actionGroup);
3 L: L1 n5 a' M! U q, f schedule.at$createAction(1, actionGroup);7 Y$ u9 c, Z' F' c
schedule.at$createAction(2, actionGroup);
# U& a; }/ w$ X: Q# l4 q
' W) b) J/ h" V' b* { } catch (Exception e) {# E) M A9 M9 X5 L
e.printStackTrace(System.err);
- v7 t5 D1 M- ~# P5 s9 J //System.out.println(e);3 [1 V1 ~5 K- x
System.exit(1);, o0 m! p) `7 m- x8 F) N Z* J' q
}8 j! Z9 X) k+ R: G0 E
% B* g1 G! o2 b$ V' `) Q, `& q7 K4 Q& O$ ?
}
7 e; n) Z0 U. r S+ k' z! P4 e3 s4 ^4 l* T S: O7 \' L2 x3 \
private void swarmSetp() {& f0 x* c) X7 c5 H! b: H
list.addLast(new Agent(Id));4 {. z" _! i4 c9 d
Id++;+ T! U, d7 q8 i6 k+ x) J* ]
}
9 y* O5 z8 B6 c8 i( Z% V8 I& \0 I* J P% s8 g
public Activity activateIn(Swarm context) {4 S- m( N F# `1 E! R9 Q" J2 h
super.activateIn(context);
% A: G5 }7 o B8 M/ c) N8 Q schedule.activateIn(this);/ N4 |7 r7 \" Q+ Z! a+ [, h$ X
return getActivity();
4 [5 |( C; `! C- `6 k: U }
1 ]" E' S3 P2 V& ], H9 P' v: ], K. |- Y4 z7 o4 ]! K
public static void main(String[] args) {
2 V2 \+ |" ]5 l3 @6 V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 i3 p3 J: m0 _0 x4 F
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' ]2 O) m! a$ S) b, q swarms.buildObjects();
# i* ~" } R; A7 P, B) \& s/ ~ swarms.buildActions();+ ^: f" i; b" Z) }4 f/ m6 s
swarms.activateIn(null).run();& W0 h- ]8 l1 }/ M
}
% ?7 m) y+ r/ l4 S% |% \- U1 T E7 A1 @% Z
} |
|