|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # m; U, \. _( {" r+ M3 f
" Z$ s! a' U1 O1 P4 g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' }+ H0 D& W/ s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* ]' f9 Z# M m: O4 J! l1 z" e
swarm.SignatureNotFoundException
) F d4 X& C+ K$ O, H5 y: _9 z at swarm.Selector.<init>(Selector.java:76)
, f. Z4 V: g& W4 V& ~% B at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% b; |/ g, N. ]' k
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% Y( T- l) k) |& I
% @* m8 c9 x4 ?. F4 p: E$ _3 ]3 U& J; e9 k) l, w
import swarm.objectbase.SwarmImpl;0 L. y7 }1 ~4 ^5 {5 \# u% Z' g: Z6 z4 M
import swarm.objectbase.Swarm;! [& f5 j" b3 s8 \
import swarm.activity.ScheduleImpl;' q. n) Y- Z6 M, k5 l/ j& ?2 m; f
import swarm.activity.Activity;
1 [1 I; t& U6 zimport swarm.activity.ActionGroupImpl;8 V1 g' p, a9 t' o; u( H8 k
import swarm.collections.ListImpl;' ]9 G4 S7 g9 p# J/ q+ i, c- ]; u
import swarm.defobj.Zone;
, m' V+ N7 M; e9 b; S) c Aimport swarm.Globals;
& X6 A& J$ k( n1 @0 ^import swarm.Selector;
4 F: S, i7 E1 d; X, z7 Kimport swarm.activity.ActionGroup; 6 N2 Q b C/ J
class Agent {
. d2 a: S1 B0 ^* i/ t- M L% ] char id;
5 W# ~! b" u% z. N( }0 \) e) H& e8 i4 ]- L
Agent(char id) {' \1 Z0 H: w+ L9 b6 Y
this.id = id;: b. N- W% i" L' e1 S% ]/ X& B
}
# k/ Z. X0 S% d9 @9 `3 ~/ d$ A# P& T
public void agentStep() {
0 c3 I7 @+ F* L* S. }& L6 c System.out.println(id + ":" + Globals.env.getCurrentTime());/ p+ `+ `3 Z9 r/ i1 S7 Z% _
}
' e5 w) B1 ?, @. c/ I, ~* p}' x( n% J( {' z; B0 I9 \' i, t, A
/ c* t" r8 b1 S, R6 ^$ Z7 F% p2 k
public class ActionGroupDemo extends SwarmImpl {
+ ?" C- H R9 D3 q ScheduleImpl schedule;( s# @% Y5 k, Y- R" Z* y
ActionGroupImpl actionGroup;+ `- z; F5 M6 e( S5 d
ListImpl list;
K1 Y5 _ H, Q. V; h char Id = 'a';$ }- u. @7 A# |. D: u
7 @! M/ q" `3 R- }
ActionGroupDemo(Zone aZone) {* G) s8 }8 f& [4 {" R( n
super(aZone);0 Y" s/ N. J) v; M: ~; Z
list = new ListImpl(aZone);, s/ h, A" c |
swarmSetp();# _0 D4 f0 h9 b5 Y: w9 Q: X$ u
actionGroup = new ActionGroupImpl(aZone);9 _; v$ G" M+ a. N7 N+ s
schedule = new ScheduleImpl(aZone);4 N% V( v7 c/ K
try {
* r V; Q; _2 ^/ s1 e Selector agentSel = new Selector(Agent.class, "agentStep", false);7 a+ w( J+ h0 L4 Y0 Q. V! {# a3 \ ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 `: I' q2 Q4 I* w& H& S& R4 Z
/ f N" P9 U. u0 u: `! |0 _ actionGroup.createActionForEach$message(list, agentSel);- o P0 v' o- Q2 b3 b
actionGroup.createActionTo$message(this, swarmSel);4 v/ B6 u# i- }2 `7 v
schedule.at$createAction(0, actionGroup);
) D/ C; E7 h9 m schedule.at$createAction(1, actionGroup);6 ^ T, n5 V' q, A- s
schedule.at$createAction(2, actionGroup); U* w3 Q+ j+ q0 s" B* U
' o3 Q: x! X! Y% U; P' O
} catch (Exception e) {6 ?2 m3 N9 ~( b( N5 @2 t0 V
e.printStackTrace(System.err);; b/ B: I1 e" d1 T! _
//System.out.println(e);. q; {8 V1 ^ L: w0 {& D
System.exit(1);# b5 y4 B8 }) H& R6 `2 B5 T
}# S% W/ _. a; V0 S5 U
- [' L. S+ ^9 e% Q
2 Q, g& U) E* a2 h Q2 @2 u0 D% K }
4 d5 l- m7 e$ c) V6 E: N
8 z6 L ^ O( T3 d2 E6 n& [4 R: z private void swarmSetp() {( f8 `0 `+ N8 C' K+ x9 y
list.addLast(new Agent(Id));- U( N5 A: h5 R; f3 d
Id++;1 e; t6 U$ k. B6 T2 p) E; Z
}% D2 q- ^+ ^$ g# g( Q) Y" f6 b
* S# n: u' x/ t9 W, V! d
public Activity activateIn(Swarm context) {
* J6 W4 I( ]) L. T) \9 B super.activateIn(context);
3 e, e! y5 C2 D% K# c( w# ]. z8 q schedule.activateIn(this);
0 B) w, ?/ H t3 @1 r! h return getActivity();4 T) ?" N# I( ~5 d) d9 P5 @
}
) A" c* u j9 v2 u8 @0 B# h) @7 H: J2 n9 c
public static void main(String[] args) {
5 y' T1 f8 C: h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* g: Y1 f a7 A; O/ f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& y8 q& X- C% R, t" C swarms.buildObjects();4 ?- x. |5 X3 W( t; S) ?, u
swarms.buildActions();, A7 l3 C( a3 E# F6 Z
swarms.activateIn(null).run();
. i) b1 q5 n p F* a2 a }
0 l. e9 b2 L7 ]6 L5 m( h1 n* e: G2 W: ]4 r; P2 O( E3 s
} |
|