|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + Y5 E6 k! [: |, G4 |' R
7 x- w+ q5 `6 ?2 u5 a" v" K: r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 q0 e5 d$ N O: @& E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ ]$ P y# j( ?; o: N; a
swarm.SignatureNotFoundException
( N' n* r" j8 M) q8 [4 \! c* W: ~ at swarm.Selector.<init>(Selector.java:76)
' X' x% F+ N. l; ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37). f$ n# }. f( D8 f* J/ W
at ActionGroupDemo.main(ActionGroupDemo.java:67)3 y- \) ^' T0 Z+ j) U; h
" Z7 G3 A, U$ m7 u1 a, W
; t- T: L! M: N9 U" L B0 v
import swarm.objectbase.SwarmImpl;
7 f% R; B- R0 Q, A* himport swarm.objectbase.Swarm;4 u0 f5 F5 w7 K7 {4 V7 e G& c( S
import swarm.activity.ScheduleImpl;" @4 g; A% Y9 a7 B( ?
import swarm.activity.Activity;! ?1 }, x) \) V4 _& R
import swarm.activity.ActionGroupImpl;8 s9 x5 Z' s0 M& c1 {. W: d
import swarm.collections.ListImpl;* @0 D' P/ e% N1 u0 G: u
import swarm.defobj.Zone; ' t {) _4 ]" R# J# `
import swarm.Globals;
# g( C5 r/ s& |import swarm.Selector;; B$ u }. r" A0 _; z$ K
import swarm.activity.ActionGroup;
L5 g! j/ N, x( u2 \6 ?, dclass Agent {
) f* T9 o5 Q3 H. ^ char id;0 K; D$ F3 O c4 P
4 H; \+ {$ v4 G7 H5 ]
Agent(char id) {
1 \' s X) E$ G- w; k this.id = id;: b# ^3 O r& s
}. d" u S7 Z" X9 O# c2 V
0 O3 T- n5 N: T+ K+ G public void agentStep() {4 F r9 V5 f& V& V; k
System.out.println(id + ":" + Globals.env.getCurrentTime());1 y$ F4 h+ ]" e* ^3 m6 D1 ]
}
( G+ L; f6 @4 r! f- ~) g0 g}+ Z A# O0 L) w& o
4 C* t0 o! X' z1 j: ?( \public class ActionGroupDemo extends SwarmImpl {+ p- o" t9 U/ N% }, A. k
ScheduleImpl schedule;
" y( V7 p$ G# B7 {) @! N ActionGroupImpl actionGroup;0 M4 v- D/ [8 O. l: M' @
ListImpl list;7 n3 E5 j F+ g6 e' z8 _
char Id = 'a';
" W1 m% F' p: l( p: _% h K: ]6 G, S' j9 n( \
ActionGroupDemo(Zone aZone) {
% t: ~; B, L: s7 ? super(aZone);- H K. e& U7 \4 ~5 i) I" k
list = new ListImpl(aZone);9 T' u% P. s* T" t. h( Y9 K
swarmSetp();
6 D/ }5 |8 \7 j, M$ r actionGroup = new ActionGroupImpl(aZone);3 k4 n$ i5 R# I8 e) l/ t+ a
schedule = new ScheduleImpl(aZone);% L0 W" R* x& b' h# E& X* L+ H; j
try {6 _+ d$ k+ ?8 ~7 m. ?9 j
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 x8 X9 s" Y5 s( a( l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- Y: c- i0 M" u! \5 \
0 }8 ~2 q2 X. S, c$ Y actionGroup.createActionForEach$message(list, agentSel);
9 ~ v+ z+ {0 V* [! z8 q actionGroup.createActionTo$message(this, swarmSel);+ [* @/ d" @' F
schedule.at$createAction(0, actionGroup);) g( |8 D3 Q4 O0 q
schedule.at$createAction(1, actionGroup);% f# r$ b& g( X6 |' I! B
schedule.at$createAction(2, actionGroup);" ]9 a3 w: l+ }- J0 S# E. y
% O; B- o8 F2 u6 s
} catch (Exception e) {! N; A# y6 _2 @! g' t: U' B6 A
e.printStackTrace(System.err);5 S- i1 @/ w' J$ Y* l- @
//System.out.println(e);! @& K: }" s& \; J k# a" Z0 |
System.exit(1);0 {& G- w, Z$ ^0 o2 u6 a7 n
}
" L7 r- z9 X" s$ G& Y0 F' e2 r! ]& _9 D9 v1 d) g3 p) q
5 s5 N. |6 t. B' m
}
* s; u; i z r9 C( `
% _8 u& I. t; ?/ c private void swarmSetp() {3 p6 J2 @& ]: n& d$ G6 H
list.addLast(new Agent(Id));
7 C8 L8 L/ C8 ]3 b- I" M Id++;
/ H- l6 B6 S5 S3 o }
3 P9 r# ]/ i7 d. [3 n+ Y3 B% c; u( N$ g7 v
public Activity activateIn(Swarm context) {. j9 ?) J: z& P4 C8 U8 [9 c1 x4 P: M, N
super.activateIn(context);9 q8 X& n+ u0 a2 R5 e- s- Z
schedule.activateIn(this);' j/ S7 |/ Y9 Y% O# ^5 K
return getActivity();
6 B3 N% @7 ?( y; w) J, V }
; h0 l6 N2 r0 m) g. J+ X+ m' n
' C' b6 E b+ p0 X. W! S2 `5 _ public static void main(String[] args) {
: Q+ p: y) w& y3 q$ A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. Z F* f7 h- i3 K5 ~" d: g' y0 g& Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: Z3 N3 S2 W- O) }: O2 V swarms.buildObjects();
7 ?& q, W+ N4 b% } swarms.buildActions();8 Q2 h" `1 w6 W, [; T$ F
swarms.activateIn(null).run();0 p: K: J7 o; T" e- }
}9 q2 t. y& t+ Z% U8 u* C% y
) K+ W4 r4 I% o
} |
|