|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
z4 w6 J7 _2 _: r9 a! L# s0 o# u! _2 P W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# S6 u; x6 ]) {; K5 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
F% U& d% v) P3 E, ]/ }8 xswarm.SignatureNotFoundException' d4 n \( Z1 i
at swarm.Selector.<init>(Selector.java:76)
6 C1 G4 T$ e7 _. z- h9 B0 w3 ?* F- ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 t. S2 u; s: S0 g7 O" d at ActionGroupDemo.main(ActionGroupDemo.java:67)
# J% C! Y( x N4 k; q9 n' K i! c$ z, a' M; G! Y4 g( M" E2 V
1 t2 H5 }. L- e7 H9 Q
import swarm.objectbase.SwarmImpl;7 J* ~5 U* \1 h3 P& K- y
import swarm.objectbase.Swarm;( ~: I$ [4 p2 \7 H) \0 y0 T* ~
import swarm.activity.ScheduleImpl;
% Q4 z; j3 a, w/ l+ aimport swarm.activity.Activity;
2 x1 u" b$ j+ _import swarm.activity.ActionGroupImpl;$ K6 V! A" z- m- u0 f
import swarm.collections.ListImpl;1 F8 w! T# z" f
import swarm.defobj.Zone;
J8 l! H3 `1 W( x+ Himport swarm.Globals;2 J# c4 {; @* b$ p
import swarm.Selector;
" B& S5 Y6 a0 P) B$ x# }8 Uimport swarm.activity.ActionGroup;
) v5 h! n7 v, a* ~. \class Agent {* v, W' S- ~, u. v" c$ o: `
char id;
" D" ~* L/ c# i1 I9 ]; J% E1 \6 C" \8 n
Agent(char id) {
/ Z$ `9 O/ O& B9 a this.id = id;
0 m/ c' h# g2 g2 P. W3 S4 P }
" _( c, f! U/ |5 l( [, ^
) L6 M- M7 f4 D+ |& D$ w public void agentStep() {8 i0 _8 @. |3 u! h/ T; K; ^
System.out.println(id + ":" + Globals.env.getCurrentTime());8 t$ n3 i. N5 \# Z3 v
}
8 n# Z- ~1 S( t( y}* d) x8 C8 N! W# @6 P& a+ L8 p
9 Q8 U* F$ P: c# M) T$ \
public class ActionGroupDemo extends SwarmImpl {! Z* H V" t+ o1 |) V: }
ScheduleImpl schedule;4 Y5 p+ S+ G5 ? Z4 x" i
ActionGroupImpl actionGroup;
+ S! j1 g, X; I6 f ListImpl list;, [( G" l0 M& e y* T5 i% p4 y9 S
char Id = 'a';
. x9 |- K R- H9 p& w) S' q% \ S6 b
5 p' ^3 v5 i( e0 g* R9 U1 f ActionGroupDemo(Zone aZone) {) }0 h" f: W, k- j& g; ?
super(aZone);
+ T( Z8 D- t& N list = new ListImpl(aZone);+ }" n3 k# B3 H% T3 S+ O8 W1 }5 q. O
swarmSetp();+ t/ j6 J- t. b# V8 b2 h
actionGroup = new ActionGroupImpl(aZone);0 a( U( x, K9 v( A9 K l& A5 `
schedule = new ScheduleImpl(aZone);( k& j/ ?; p0 ?6 _, F ]' \
try {+ }0 {8 I- [: M$ M# Y H2 T* J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
G7 U1 L5 i, t$ g5 s. L. Z7 C Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# X, Z! L5 ?8 s# c6 N! j. m
* F3 U6 @4 ?# n: Z- m) D
actionGroup.createActionForEach$message(list, agentSel);
$ H: C0 R6 T) g actionGroup.createActionTo$message(this, swarmSel);
9 q9 J) a; k/ w' u3 p" b% e8 g: ~ schedule.at$createAction(0, actionGroup);
, U( X; M D! d3 C( J- P schedule.at$createAction(1, actionGroup);
9 j, J, H, l% Y3 x7 h schedule.at$createAction(2, actionGroup);7 a/ X0 B+ Y6 S0 B
- Y! |( K) o3 D9 V8 n* O# B* _+ d& c& v } catch (Exception e) {
2 V' ]& z% H' q/ N5 a( P$ J( L5 I e.printStackTrace(System.err);
' f) O# \# ^9 Q( b9 h9 \ //System.out.println(e);+ |) L4 P, h: s2 F0 E
System.exit(1);
+ X1 ?1 I$ M" e! C5 {/ {; E }
, m: p: h2 d# E; P) x* w5 p" h$ r- J
/ |% l* z. V4 H1 J% ?/ ~0 i; m
}
7 ]( m. F6 ?9 I. F* w3 R8 }
% E; d, I6 t0 t private void swarmSetp() {
: ?3 s# Q( q- j$ B6 ^ list.addLast(new Agent(Id));! F( Q5 V$ s; p; U4 x U5 x! J" R
Id++; n- C' Y# Z1 M! d/ Z5 `0 {
}* p( I+ Z @' n6 j; V' }
: Y: z) A, C9 F public Activity activateIn(Swarm context) {
# ?4 ^& c6 z" Y, ]0 W% B super.activateIn(context);
- S" [, ^) F+ h& D schedule.activateIn(this);
5 e/ T% J4 h4 Y+ b9 n N% R/ J return getActivity();- a' Z n& [( g' n1 v
}
5 I* L _% a6 @- F7 Z* |1 [
3 p4 Z, T G5 X# i2 ^ public static void main(String[] args) { J* X$ B5 N) V+ F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 ^- q: D8 ~2 U# G8 p8 R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# B% y. `1 j5 r! e. M
swarms.buildObjects();7 T! I% |0 h! L4 G$ n0 @
swarms.buildActions();$ |" |$ R$ j K0 b) Z1 P
swarms.activateIn(null).run();6 P v5 L7 D; C. S9 q
}5 w T4 X! _) B
8 H5 N( C; b5 P, X$ ]2 J
} |
|