|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , w+ `# P, D; K# z
5 b( x) k3 }5 G4 g& a6 p2 m) U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ O8 h6 J8 f6 k( n6 H( I# r6 g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# E) s! c+ S: f) l$ O) c. D) o
swarm.SignatureNotFoundException: j+ v& K: X8 P( O9 y: H
at swarm.Selector.<init>(Selector.java:76) F1 z, W4 [1 y2 ^- R9 `8 Z2 y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 z$ ^; c. M4 A6 p+ ]# T at ActionGroupDemo.main(ActionGroupDemo.java:67)$ n P( D3 W0 T9 l/ L
5 D% s" z3 M! c1 V& q& ] D7 ^
# A9 P$ E3 J0 P% s) g6 Zimport swarm.objectbase.SwarmImpl;/ a& C- _0 }' S @& O9 `; P
import swarm.objectbase.Swarm;# ]8 ^+ ?% J* T8 W% o% A
import swarm.activity.ScheduleImpl;; U) D; q } n, a
import swarm.activity.Activity;
; P& C: o$ d( i4 v" I4 jimport swarm.activity.ActionGroupImpl;
% P- q; y9 [5 h: ?! Timport swarm.collections.ListImpl; `# ~& [& X+ J9 |, k. @
import swarm.defobj.Zone;
5 C! f- }# B. w1 wimport swarm.Globals;( e% q& M2 @8 v" l# K- D5 B Y
import swarm.Selector;2 o, I5 E$ n# Q1 O+ f
import swarm.activity.ActionGroup; ; E! Z3 T5 F- |7 h8 |. A: s( z
class Agent {$ e' v: m: B) l! ^/ m% H
char id;, Z6 @- {, Y2 Q6 `
2 v$ G5 ^1 K8 F7 h+ z, D% S Agent(char id) {/ R# l h# X, w6 ]; b7 X
this.id = id;
' ^4 @4 X2 D" f* T5 E' e7 o }7 W% m6 o% K" S% K1 w
# V% q& s- V% E& F
public void agentStep() {+ P7 i3 O0 P. e7 A- n: T( e1 G* b
System.out.println(id + ":" + Globals.env.getCurrentTime());+ L# S8 e6 C! k% T; `) u8 m
}* y: L- ? X B4 [5 P
} @& A( u$ G& e$ x) K( f$ Y7 m
; s, K7 _+ T8 a4 B# g8 npublic class ActionGroupDemo extends SwarmImpl {1 r+ I8 ]; z x6 m- P
ScheduleImpl schedule;3 R, s6 `. O4 e( M* {! z5 m
ActionGroupImpl actionGroup;
' F% G- @) X; W" O! f5 I ListImpl list;
& Y7 `* q# d* d; b char Id = 'a';
- M' p& J! u+ M& M1 t8 [
6 f; f9 O! E8 ?: g8 E ActionGroupDemo(Zone aZone) {
" K# b: V" e, @; T6 f2 A% M super(aZone);$ D4 L9 n$ h8 ?9 k# y! T" l
list = new ListImpl(aZone);
: ~: \* p3 S* f$ ]% f( f1 I swarmSetp();
Q- P. W; Q& U5 S actionGroup = new ActionGroupImpl(aZone);
) i! S7 d5 j6 T$ m: h& L* l5 Q, I schedule = new ScheduleImpl(aZone);' E7 t; s6 J" _) G2 |( A Y5 l' H3 U
try {
" M* v$ p: w% R: A- o! n. a0 r, H Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 s: O0 P$ d( B7 h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- S. z1 C, r. H0 t
9 K+ U) t/ z7 |
actionGroup.createActionForEach$message(list, agentSel);
. h; \5 ]+ V0 N B- | actionGroup.createActionTo$message(this, swarmSel);& e$ G, w' h6 _- F* f. t
schedule.at$createAction(0, actionGroup);9 p7 }8 R& v" a
schedule.at$createAction(1, actionGroup);
# M- C$ u$ D' J2 ~ schedule.at$createAction(2, actionGroup);
- T. T# G# i3 ~) c9 U0 k$ T, p: M& I) D& t2 p
} catch (Exception e) {: e$ n- ~* H4 l" D. B6 H
e.printStackTrace(System.err);
4 }0 P3 C" _/ C; g$ t: q; P1 D //System.out.println(e);
8 u2 i6 C1 {- O0 G. P7 }4 h- b- |9 C7 \ System.exit(1);" ?. ^' n/ v6 |1 g0 I. X2 Q2 Q
}
2 P1 Z a' F3 b5 w: Z4 p+ ^+ s# m+ ?
4 S: P1 q2 g- J$ [ }; }( q: Y& j6 X! r" G$ x" p
# r/ z* \; R7 T, a0 `$ t+ y& K4 | private void swarmSetp() {4 N* M" R' [4 g4 K
list.addLast(new Agent(Id));
. y) S4 I: z* |; L1 z# \ Id++;
6 h* h) M5 V% o& i" {! [ }, N/ d/ ?/ w2 c
6 }" Y. A. T9 E2 N- r public Activity activateIn(Swarm context) {
0 p2 k3 k. v L0 o super.activateIn(context);
7 _. h& Q2 b& q2 u4 g. h schedule.activateIn(this);4 P/ A8 e: E- n) z9 B W6 A
return getActivity();
/ q4 l$ P. Z6 f }
8 C5 I' C% r9 i' ~8 m5 R, S0 W1 n# K
4 o+ w3 C* z; Y; K public static void main(String[] args) {
/ A/ w2 Q5 Z6 a" e; O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 P r0 f, j' g1 X2 `7 n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 s9 T2 f( H" @; G t0 M swarms.buildObjects();0 j P4 W5 \/ j* m
swarms.buildActions();. ~7 C! s9 ]: l- K
swarms.activateIn(null).run();: Q( H7 n6 m3 Z) J" E
}. ^# o, \' c! n7 H4 i+ H
+ ^3 n+ P0 F0 Y, j( i K* l} |
|