|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 ~' c' c& }3 @2 n& n# `8 d$ d. Q8 C3 a @ f0 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' s* `" f6 H' i4 U, i6 ^. v" j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ [& Z5 J4 H) T. n7 i5 ^swarm.SignatureNotFoundException
; U, T/ \8 v/ L$ V4 u at swarm.Selector.<init>(Selector.java:76)9 {) w! I5 J j* M( K% P6 Q' T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), E) V( j% i0 M9 f: ?5 S7 X- o" V& G2 F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 j5 E' L( e6 F/ i' `* P" D
+ d# X, O6 \- p. @5 `+ o% U/ V" _$ a
import swarm.objectbase.SwarmImpl;
- U6 W( I+ P5 [) }; C4 w8 m7 }import swarm.objectbase.Swarm;
5 m# O+ N6 @) @5 k# A# g6 H; E- R aimport swarm.activity.ScheduleImpl;
! r7 Y* K; z/ z& {' Zimport swarm.activity.Activity;
( ~) H% w) p/ w. F. Zimport swarm.activity.ActionGroupImpl;
2 S* t1 C$ ^2 e( z4 n9 Wimport swarm.collections.ListImpl;
6 V4 d/ R8 q) Qimport swarm.defobj.Zone; 1 Y; Q Q( Q: [1 r
import swarm.Globals;- @ F4 f5 p' V; b% ]
import swarm.Selector;! w( z9 ?/ Y' n, o7 `# d
import swarm.activity.ActionGroup;
$ ^+ N: K0 U/ z! t2 Qclass Agent {! y7 t9 _( t" P5 C7 Y
char id;
& m* G* c' Z# A: \. e9 z+ Z( H6 {- y
Agent(char id) {
% C4 ^' i" J8 l7 j2 D: d" R9 x this.id = id;, g K; N8 y# i5 K F
}0 L+ d3 i$ i7 ?' N$ g
$ p% `1 r9 j% o7 g7 J% I5 e2 V0 p public void agentStep() {( c6 o% m6 k: Q: w
System.out.println(id + ":" + Globals.env.getCurrentTime());
: s5 U$ T9 r( u* ^+ x2 t: e }
" a. b+ C s. ?9 |9 B. M}) t% n$ B6 K# U$ q/ O
0 f- d6 {/ W5 k/ z5 V$ Z
public class ActionGroupDemo extends SwarmImpl {% d" s9 H6 E3 L5 z B2 I
ScheduleImpl schedule;
) s3 V) G3 t; c4 y1 N ActionGroupImpl actionGroup;
$ c( t4 x4 Q B ListImpl list;1 ?+ V5 i9 Q# L1 ~
char Id = 'a';
# ^- Y: o1 z3 r% }
/ |) d, d$ u+ `7 D2 g. @ ActionGroupDemo(Zone aZone) {
0 C+ e- _' ?) |- _8 v# Q6 r super(aZone);+ N" I! v, }. k% N# ?* X
list = new ListImpl(aZone);+ A- _) U# I- d, F! N3 A) U9 X4 N
swarmSetp();! Y+ f# }% w+ r* Y9 D
actionGroup = new ActionGroupImpl(aZone);
+ r: L# a# J- L8 ^ schedule = new ScheduleImpl(aZone);+ P+ T% N {. {. V
try {
9 Q3 S) a; l1 `/ Z. A J. E2 S# c Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 C8 c8 P, w- Z, T: J! R Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% i e8 p' M6 J( e+ u I + u1 V, W2 z# @8 l0 h
actionGroup.createActionForEach$message(list, agentSel);
0 f! s# C# D) B1 }# p actionGroup.createActionTo$message(this, swarmSel);1 ]) y) c8 D- Y2 A0 P
schedule.at$createAction(0, actionGroup);; U+ L) b: E3 L+ G. \0 X
schedule.at$createAction(1, actionGroup);' g$ N; V0 [! m7 J# n! n
schedule.at$createAction(2, actionGroup);
" C* S, B5 h; j; @5 o1 a+ x+ Q9 K7 I3 D
} catch (Exception e) { _( P& N }0 F% \9 I: C
e.printStackTrace(System.err);+ _3 j1 H: O6 ~) |+ w
//System.out.println(e);
6 _1 m9 g) h' w( D System.exit(1);$ m1 r; M, D/ r! d7 _! K, c5 h
}
' O! [7 X; G8 ]6 X0 r, t2 ]" M) r6 X$ g1 l! \* r3 l4 f' C
2 k! ?: {9 b) K6 g" o& S6 R! O: h } a3 l3 B$ e& w. T8 T. t5 m
+ K0 Z! ]7 n; m+ C) y0 R private void swarmSetp() {
+ {. j8 c/ v. e: N! W" u0 z# k7 e list.addLast(new Agent(Id)); B6 E. e( c8 I3 D
Id++;" x$ V# [: b; \8 Z- ?7 u& H
}, E2 D( M* d% Q5 _
, j; \- U F' Q* x" E. Y9 e public Activity activateIn(Swarm context) {
+ T* R" a. h" r. R' W9 @ super.activateIn(context);1 P; d8 x/ W K' E7 F# n: j
schedule.activateIn(this);
+ c) d9 @, M" M' {1 T# f! ^ return getActivity();3 a4 o) D8 @, M1 `3 x% d! o& b! Y
}0 Y* `+ c2 B$ T6 w
! b1 V1 h. A, m public static void main(String[] args) {9 m6 j7 K% v e7 }* C
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 R) H6 }- J( {% N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 o; y9 C8 M# c5 o) A% a
swarms.buildObjects();( d1 o/ {. z5 v8 I
swarms.buildActions();7 A% Z( O' g( O/ y: M+ a/ g) q+ {
swarms.activateIn(null).run();
' c0 S# s1 a$ d5 A3 Y/ I }
8 i; I: U0 \. O c: I4 O: Q5 i0 }, d# i
} |
|