|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% B- z4 D' _: F; U. f4 g" M" j1 s& c6 ?3 V4 C# N+ ]# e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; U& z4 U# a/ i% q6 f0 L4 J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# g8 z2 c, r$ g# |) s+ [swarm.SignatureNotFoundException
, R1 Y Q8 N) B" y$ M- F! @ at swarm.Selector.<init>(Selector.java:76): P$ v3 j/ @; B- t1 R4 ?( p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 f: ~" B1 ^ L" _7 V at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ f6 `* T+ d* o
5 A: x4 e6 @' c6 h) _4 Y( T- Z3 G& P0 M3 T/ u/ j' s9 r
import swarm.objectbase.SwarmImpl;- b& m: u, J+ d" Z- I8 p
import swarm.objectbase.Swarm;# b! w7 ]' l5 Q/ n. l
import swarm.activity.ScheduleImpl;3 a2 P7 h( k- J; V& s" h" c Q
import swarm.activity.Activity;7 B7 p/ Q7 O4 q# G+ f3 I7 }
import swarm.activity.ActionGroupImpl;0 z8 L8 |- t% S, Z5 n0 d
import swarm.collections.ListImpl;
4 J/ q: D% s ]6 P0 X; bimport swarm.defobj.Zone; % _; z Q+ D/ ?" f& U& A( j
import swarm.Globals;1 k, S: [- j1 {+ \, d8 M4 ]& L" R
import swarm.Selector;7 ^, m9 |2 g; e0 n$ U
import swarm.activity.ActionGroup;
O( W9 {) Z* F1 \! o5 M& Iclass Agent {) L7 Z l: _7 v1 Q+ U
char id;
# F* n( C P' Q& a
: H/ }7 \, [7 f/ t* B7 X0 H Agent(char id) {3 g2 O) y* M& ?
this.id = id;3 \% @; Q! |. v1 Y' i
}
* V7 _: P3 ]* m3 d- X- A' U2 v/ i! j
public void agentStep() {
, C6 ]) J; L4 d% { System.out.println(id + ":" + Globals.env.getCurrentTime());" l& b5 K/ f3 G: b$ ^
}8 Y; b- m# k, t6 a, S4 U- V
}, \: [4 k# v6 X Z
. N) q$ Z8 H1 O0 D" D+ S' Upublic class ActionGroupDemo extends SwarmImpl {
$ C6 J. x- k) a5 }1 W ScheduleImpl schedule;
8 m- L7 p5 B$ m0 ~" M u9 j5 ^5 a$ A ActionGroupImpl actionGroup;2 d1 N& r& P o/ c
ListImpl list;
) D! V/ a- [# l8 q4 W char Id = 'a';, ~9 K- ~8 c$ Z% w( ~
2 G' h4 z( l! a4 {
ActionGroupDemo(Zone aZone) {
3 f; L0 \# u$ l" H8 w% ` super(aZone);9 x: @8 N) t3 s- d5 [
list = new ListImpl(aZone);
6 ], i% C" T; C, U8 B swarmSetp();
4 v) v) \6 v+ A: m" ^( f4 T actionGroup = new ActionGroupImpl(aZone);& c& K1 g# e$ @6 z
schedule = new ScheduleImpl(aZone);
5 C- e0 k7 ?3 ^ try {
' d. [0 G! h, h3 c Selector agentSel = new Selector(Agent.class, "agentStep", false);2 E% Z7 |0 M. U- x* D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ Z0 F2 |, l$ b) i
6 ^/ \1 N8 V1 k& f
actionGroup.createActionForEach$message(list, agentSel);' o3 X! ]) g: }2 z$ \1 q
actionGroup.createActionTo$message(this, swarmSel);# A# c3 T' N Q" t; H
schedule.at$createAction(0, actionGroup);
+ i+ A5 b- S5 k schedule.at$createAction(1, actionGroup);" ]) k7 W6 O) q0 f/ g0 m6 B% e
schedule.at$createAction(2, actionGroup);
k$ k; ^* C p5 r) z& I9 L5 e- `) h' M) _
} catch (Exception e) {
1 _- S; M+ d; h, u1 q e.printStackTrace(System.err);
- z4 m& u! X- {8 F! J3 s% o //System.out.println(e);8 ^9 H7 |$ t7 z: T4 f
System.exit(1);6 w: T; p% @8 a
}9 b7 f" F0 n: I8 v
4 F! z; H- n8 x+ E6 p; b
& W9 N9 |2 j7 k5 g5 \ }2 D7 T ?7 k. _
+ V* @( @. q8 q5 A& C private void swarmSetp() {
$ T7 |; I m/ {2 l0 {3 I list.addLast(new Agent(Id));
) U3 o2 D; j& l Id++;; f+ Z; D: F) R! A5 _1 I( e
}
/ ~2 z; j5 w# k
9 g0 l/ A i8 T; l. ^8 g public Activity activateIn(Swarm context) {
( t3 R/ i5 F y6 o! h O super.activateIn(context);, I* h( C# \) ^% W! y: S
schedule.activateIn(this);2 a! a. ] r; c+ P- O _# P9 o4 g
return getActivity();( V: a+ A( K Z' K: \9 s
}
' e q# T, k' n+ N: L
9 Z ]" \3 k8 |& o, Y) A public static void main(String[] args) {
0 ~+ H% l2 f% m" h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- d" E1 k4 t7 T; R# a: E. w8 d) A: |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ {" W# E" m7 k
swarms.buildObjects();
. b0 T0 y( H0 V/ ~% f1 u) U8 z swarms.buildActions();4 l. n9 K0 S- g
swarms.activateIn(null).run();
- o; l# u8 _( ~ }
2 B3 A7 C/ f% [3 N% c" {: L) G2 a Z
} |
|