|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 ~, Z I) L; G$ W& K! G& j8 ?3 d0 y X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ l- S9 Y/ R! B) c$ t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 z$ ~" M" U" H) K9 N6 j& |/ u
swarm.SignatureNotFoundException( V- C- ]2 L: [
at swarm.Selector.<init>(Selector.java:76)8 G. L: q; P( G5 Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 Z& C# r7 n- [3 T5 m/ D at ActionGroupDemo.main(ActionGroupDemo.java:67)
; k9 S7 \3 o5 N+ l' s6 R1 n, {; D. u# H6 P( y
7 j- B* Q# L# r. ?, r4 y) Q" [
import swarm.objectbase.SwarmImpl;
$ s: ^: b- p: r, Fimport swarm.objectbase.Swarm;
# b1 F. w5 d6 c( Q/ C- F* Fimport swarm.activity.ScheduleImpl;* e6 a( p1 J: f$ i8 }, k+ E
import swarm.activity.Activity;7 D" I4 @" C# f5 P, _
import swarm.activity.ActionGroupImpl;
$ j3 Q: ^ t- T+ x) Simport swarm.collections.ListImpl;# y2 K, j5 P/ I+ x
import swarm.defobj.Zone; 9 \: z4 x% _. e8 Y( N
import swarm.Globals;
1 M& Z# h7 i. _import swarm.Selector;- X1 Y7 X" N1 J1 \. {
import swarm.activity.ActionGroup; * q I A" K; l0 y& C0 Q; y
class Agent {: J) ]# u/ ~! z0 b' r, J q3 K0 R+ o
char id;
% _- U) Q, O9 \: c9 i d: F2 o7 X& z! u) J4 \/ G) K
Agent(char id) {
" p5 K9 _# F* j" v$ U2 } ~8 s3 x this.id = id;
H% W8 E$ S( O" ` }( ~4 I% k1 o( J" { f+ v d
8 q, r& p( |# O; S/ g
public void agentStep() {) A& [8 b6 P) [$ j1 \' S$ b
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 e# v! R3 s0 W }
6 J( z' q) h" F; M: M* y R/ @}
' W) I9 X5 n! D+ o u' H$ l4 ]4 N, U
public class ActionGroupDemo extends SwarmImpl {% U/ Q5 b$ [& r+ Q! I
ScheduleImpl schedule;
8 x) B' |/ ]; @( j7 | ActionGroupImpl actionGroup;1 ?* k Q# f$ G9 u
ListImpl list;% K6 ~+ V5 Z5 r4 j2 z+ c: r1 V
char Id = 'a';# I2 Q/ z/ B; I2 {, x7 v
# H3 H5 V9 `8 ~$ A2 m, L0 @ ActionGroupDemo(Zone aZone) {3 m. ?, S0 b; m2 T5 w# }
super(aZone);
0 \4 F# H3 s+ |# g- L _9 R list = new ListImpl(aZone);! W. r: F& ^2 b4 w8 r
swarmSetp();
9 w- ]( Z' k- y4 e: U2 k' c actionGroup = new ActionGroupImpl(aZone);
+ n2 a* J- ?* l; H9 R4 K, s& R schedule = new ScheduleImpl(aZone);! f+ Q- E; G% O8 D2 M0 A# y
try {7 x0 k0 h9 m+ e2 Y6 T/ x
Selector agentSel = new Selector(Agent.class, "agentStep", false);
' \9 M+ r- c7 |6 k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" r2 d, I# O; r5 o. M
$ ?" b. a4 L" \ @8 Q$ G$ O actionGroup.createActionForEach$message(list, agentSel);
1 M r8 C$ M/ g {- y' e* b' Z actionGroup.createActionTo$message(this, swarmSel);
]5 {' F5 S9 P5 L schedule.at$createAction(0, actionGroup);
2 Y3 q+ W5 w0 K2 B* W* x schedule.at$createAction(1, actionGroup);
* z; B+ E( j( V schedule.at$createAction(2, actionGroup);
z" q# @) Z5 i/ u
1 q- T% R0 W+ i6 {& O- _1 |. K } catch (Exception e) {
6 D: d4 g, E2 L) O9 g e.printStackTrace(System.err);
' O2 ~6 q4 X! \! r! w$ U( V# J //System.out.println(e);9 t% \% t+ q' _" p: i T
System.exit(1);7 ?0 j+ \9 a( }. [* }; b' @
}
& G& e" y- v% L! z" c# x# l3 Z9 n. ~ N( D: o, D
: X3 v8 q# m) U: y, z7 z5 P' p. u }
& B5 e& F B0 r4 o/ }1 b5 p
1 h: f2 N" i! P% G2 P! }/ I1 S& o private void swarmSetp() {
+ C) C( i i! x" L list.addLast(new Agent(Id));2 @0 J: O- A: G! Q& \- d
Id++;
5 y7 w' x- i$ `4 u3 d( [ }
6 V& j* }, H! h9 y& [# z* R2 \. e
. D2 `* f- e% k. H1 ?' } public Activity activateIn(Swarm context) {5 K, d$ o2 Z1 L: {' F
super.activateIn(context);
4 L n# V: _% B% v& o9 A; X schedule.activateIn(this);# H7 W/ J# [$ h( t5 f- k+ p
return getActivity();5 N0 ~+ C5 j6 ?. d- Y2 {
}
5 W% ?* T" S: x$ j/ A
- t$ t: n! q' Q public static void main(String[] args) {
7 O8 i, g2 x0 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 }- v4 r p! d: Y6 d. E! X
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 a2 e& s" L. h1 w' B! V9 a swarms.buildObjects();3 o# p, X' b5 _+ n7 V7 d
swarms.buildActions();* w# F" J a. ]% Q5 t/ T' @4 M
swarms.activateIn(null).run();
' v1 j) M: N% F. ]2 ^1 n4 ^9 ]9 G5 w }
" |0 F+ s1 i) ~) K/ B* O, a8 z- Z$ [+ H/ v
} |
|