|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ W* S* |/ I% l( |4 z+ h4 r; U$ r$ i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 n" W( R* \5 @: t( K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 g" v& R$ f: J+ g5 g* L
swarm.SignatureNotFoundException
9 ?5 {, C: Z6 T2 s2 a, B( E1 K at swarm.Selector.<init>(Selector.java:76)
) d0 R1 P+ x6 ?1 v( w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 G3 Q9 {4 B- e& t" Z- P) P at ActionGroupDemo.main(ActionGroupDemo.java:67)
" g6 ]1 u- x0 s0 y3 U
1 a" `2 z. X+ }/ W& Q) k0 d6 v; N6 G! U
import swarm.objectbase.SwarmImpl;
, F+ [7 s: D6 a* s6 \+ i" X+ t3 rimport swarm.objectbase.Swarm;3 n# ?( @% m9 L* c
import swarm.activity.ScheduleImpl;& \, t% x+ X7 {- ?( J
import swarm.activity.Activity;& {2 [' Q& Z/ B) D
import swarm.activity.ActionGroupImpl;
' T, X! [$ \9 {- G% K' n' o2 V5 Wimport swarm.collections.ListImpl;% g; [% ~9 l) h1 w; [
import swarm.defobj.Zone; 1 N+ M1 C: j j
import swarm.Globals;
" Y+ X D; N9 _6 pimport swarm.Selector;
]* Y. y6 Q. Aimport swarm.activity.ActionGroup; * s1 }+ b2 b/ P6 j8 e) S! Y
class Agent {; S* Q# p g) `, h# N$ \
char id;
( y) n) e9 S% b# [. \# U& h" i$ R/ g* f, S( N. R
Agent(char id) {
* o, t$ Z; j$ x* \/ n5 W; D this.id = id;
c! s/ h7 @$ E. i# S: M- y/ i }. \. }$ g4 g9 }: @+ O2 B
, _5 J( B2 V; k; ~+ c
public void agentStep() {
/ R4 i9 u/ ?. G. X+ A3 v System.out.println(id + ":" + Globals.env.getCurrentTime());
4 r9 _: a$ A2 [! [6 o }
9 F0 I3 d4 [" o- S% M7 v7 [& Q9 K}
' D/ r" d( k6 b9 e9 Q9 S1 k
% w& T* i+ H3 s ~. S, f( ?public class ActionGroupDemo extends SwarmImpl {1 o* {6 f b+ r, A2 Y% J* F% r* \0 b
ScheduleImpl schedule;
) ~7 H7 I6 {: B8 W# M' ? ActionGroupImpl actionGroup;5 d4 p( c" Q2 ` l& D
ListImpl list;
. q$ Z- K& N: ?: y& p' ~3 X) v char Id = 'a';: | L- V. D3 L: J
+ N# z" V g' s% m+ F ActionGroupDemo(Zone aZone) {1 l1 J& h9 ^. o& i" l4 S
super(aZone);2 A n. |9 S$ h2 f
list = new ListImpl(aZone);
+ u; }9 e. v' s8 H3 L# a/ B/ g swarmSetp();
9 W$ D& T8 m3 A. n actionGroup = new ActionGroupImpl(aZone);
9 z" ^# ~, u2 Z r/ O% O6 ^5 f& L schedule = new ScheduleImpl(aZone);0 v) k. Z) K2 `3 N) u) R
try {
* k+ X" w- u+ z" L* v$ k Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 @" I7 r9 b" h/ Y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 j6 t+ n# {7 z! O; [
2 i- Y r5 X3 ^7 S P7 f6 o actionGroup.createActionForEach$message(list, agentSel);4 w9 h/ J, t. N" E' Z5 o
actionGroup.createActionTo$message(this, swarmSel);: {$ ~' e& U/ z0 {; P) a
schedule.at$createAction(0, actionGroup);
6 @8 e) I8 V2 A3 k schedule.at$createAction(1, actionGroup);
' L+ M( w, d3 L+ p1 I: T schedule.at$createAction(2, actionGroup);% R9 n" I3 v& W# G* F A
' }" _. k# ]# P2 o. U3 P) N
} catch (Exception e) {3 l+ k2 Y5 R+ U. V. n( J
e.printStackTrace(System.err);% [6 `8 o7 L2 k6 }. i) F
//System.out.println(e);. h3 v! X/ M. p& K8 t% u3 L
System.exit(1);
1 N# T' L; X% n/ P2 i' m }
* ?% w# n$ G2 a3 |* X4 x
9 u/ W K6 r" C. t! K( k' d9 ^+ L) m) y% @0 [! R3 ]
}
6 l3 u* }3 i: P+ P" f8 l
2 {. ?/ Q# o, | private void swarmSetp() {
# d. I+ o$ P+ O list.addLast(new Agent(Id));0 ?: |2 ]( z2 H
Id++;2 P! m9 B9 Z5 |! P/ F6 I! U
}
! P7 o+ i& t# {5 w/ q0 W
" Q1 U* G: M! V" [ public Activity activateIn(Swarm context) {
3 @. B. m/ \& w* w# D/ p0 T super.activateIn(context);
* W* w" F! L7 S* q' f; P0 ^3 F schedule.activateIn(this);
+ }; r; ~7 f) M z* H& o) B6 D' U return getActivity();
& w3 E7 O5 T. w% l$ Z }- W0 I6 I4 k5 N3 |; d8 g
" e4 u0 B7 h. Z9 ~ public static void main(String[] args) {
m) y" g- a! }& t( U$ K7 Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ |; K& G/ K6 M- `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 `1 C& e' K) _$ @& l swarms.buildObjects();
k; P( Z& h2 f swarms.buildActions();
; z; ^* B- Z( Y9 s$ l4 @7 N4 u+ W swarms.activateIn(null).run();% j b4 R/ x( s8 }( P% W, W
}
) g0 r7 r& P9 S: y% i- `$ W8 D" ~7 u9 [, O
} |
|