|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 F0 R+ w# E1 U- d: L' o% u, \% y: S/ L* Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 q( d5 v- s9 ~# w/ K: O" |5 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 ~9 P# t' I% F0 ?) M
swarm.SignatureNotFoundException- p$ x) s! ^8 X i; z' F& y
at swarm.Selector.<init>(Selector.java:76)# h& N- T4 p" {
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ |/ z) N! S0 u) _6 a
at ActionGroupDemo.main(ActionGroupDemo.java:67)8 i# S3 J+ a/ R; @
& w E3 b/ {, a
9 V! H, B6 o' B+ d) M2 I; L1 j7 uimport swarm.objectbase.SwarmImpl;
; H2 r7 i6 ~. _6 `import swarm.objectbase.Swarm;
" u7 }$ W" K: F! L Bimport swarm.activity.ScheduleImpl;
6 S& m0 P- `( Y* k4 cimport swarm.activity.Activity;, R- _- M" B/ s' J; W; d
import swarm.activity.ActionGroupImpl;
5 @+ B( k. C7 Kimport swarm.collections.ListImpl;
- F& V; W5 F) Q6 V9 l9 g; r* V; j) F; Himport swarm.defobj.Zone; 6 f7 h7 A) Z" @, p! j
import swarm.Globals;
; g4 t4 j1 r% H& F' C) m0 @: Rimport swarm.Selector;
% w; a: v+ q2 `2 ]& p/ eimport swarm.activity.ActionGroup; ) R2 K0 n% p! G3 j6 g
class Agent {
& b$ A/ j2 S. i ~2 j) ]/ k0 d char id;& R* ?/ O$ h0 t7 ~7 Q) F
- s- g) `7 P5 x* u( _7 M. _
Agent(char id) {5 L k# p. F N, K! O' A; |
this.id = id;9 C8 c+ A( g3 B8 D+ ^
}2 d. b) ? H; L( q" U, R; v9 h
+ x6 Q$ X( `, ]
public void agentStep() {
# P4 t$ X- f" @. I& v! M System.out.println(id + ":" + Globals.env.getCurrentTime());
; C6 C9 u. V j0 @ }
' g* l3 J3 i& x$ M$ P0 b}5 I; x7 n0 J6 y# P0 g1 `
- [3 L2 D! I: l9 u6 u9 @; w" L" Z7 O3 }' ppublic class ActionGroupDemo extends SwarmImpl {
# t z7 I U1 q0 G ScheduleImpl schedule;
& s/ Q, n; _# J1 x: I ActionGroupImpl actionGroup;9 V! I4 j2 n; f
ListImpl list;
# y) k* w6 |- }- j/ H1 J7 @ char Id = 'a';
! @& y* h6 q7 A: _% `% O! s4 C! R) p8 Q6 Y6 M
ActionGroupDemo(Zone aZone) {3 V+ {! S& x% |/ m O5 s
super(aZone);4 n- Y! e; O2 ^8 ]7 d6 \5 ^
list = new ListImpl(aZone);" j3 J. O$ [# q
swarmSetp();& ]( Y* d0 J8 c, c* s4 s
actionGroup = new ActionGroupImpl(aZone);7 O1 @( P5 U$ g; e
schedule = new ScheduleImpl(aZone);
2 i, w6 Z4 G7 V9 |: \; g3 {0 |- [ try {" w/ y- ^. ?0 y
Selector agentSel = new Selector(Agent.class, "agentStep", false);) ~ s9 i0 \2 S" T! p: V+ U6 S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# w& v) z( Z; G. }5 j + ?# L; L3 b" V: g' g$ }8 e
actionGroup.createActionForEach$message(list, agentSel);
. U- g0 P1 f0 T# ]3 d" z6 Q actionGroup.createActionTo$message(this, swarmSel);
$ a: G4 Y6 _# X* L5 h6 I, x2 j2 z schedule.at$createAction(0, actionGroup);
0 G; x# k5 k6 ^+ o+ W/ P schedule.at$createAction(1, actionGroup);
0 }- _3 Q$ f. s. |1 Q schedule.at$createAction(2, actionGroup);
* O% ~' R$ }: t I, J$ A+ Z/ _( v# q7 T. v
} catch (Exception e) {
% S. L6 K- ^% T. x' e. N e.printStackTrace(System.err);" {, n S @6 C3 S0 W5 {
//System.out.println(e);& B: B% T0 S5 _$ Y
System.exit(1);; } v5 d0 H8 H
}
3 Y) L+ a/ y* |: i% `0 C" m8 I G" R- `6 B9 ~- L, ?
, F) ]& `3 R' I+ Q, M
}7 L8 w3 R) N& T: R7 o, a) x0 k
) o& e7 F% M5 n3 Q: j* n private void swarmSetp() {. }3 ^ Z" ?: Y, U
list.addLast(new Agent(Id));1 V6 E, a: w6 z+ l% k( H2 M7 Z
Id++;
0 C) m; u# T8 ?2 N4 M }( ^5 T! @9 r1 l
! [+ e7 v: m1 k" {4 } public Activity activateIn(Swarm context) {/ Q v0 L. M( t4 ^$ M
super.activateIn(context);; `. i8 X( l E6 `5 {
schedule.activateIn(this);) F) v0 T3 o3 F- `
return getActivity();2 M- ]0 B, |; I8 r, ~+ P( z+ I( I
}
- G) ?! c+ f' s, F) r; t
9 v% y% T$ T- G0 P! Q( ` public static void main(String[] args) {: M. B Z$ f6 P4 ~+ `5 U$ U# X0 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% b* M3 L, V1 c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 `0 `, q3 _% V H* g$ _! T/ S% p swarms.buildObjects();: Y( G( ?" [$ S o. P6 M2 ^& c% G
swarms.buildActions();
' x" H4 R' K# m) u+ x/ h7 v swarms.activateIn(null).run();1 z% f% m6 z! d# c9 {
}( W; t9 n R i, }$ F
$ `6 Y5 x/ [' |5 E- N} |
|