|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # x; W) ]' P: t, d5 {
9 t A( d9 s6 P0 o. h9 [: ]- Q! [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" h1 _' Q5 ~5 j/ `4 y6 H' `/ e5 A) @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, t9 y! y% }, J- B& {) ?swarm.SignatureNotFoundException
: s$ X$ ?% c r! X. n9 F8 D at swarm.Selector.<init>(Selector.java:76)' P' t% N; [3 }: r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 u0 z' f k2 c, ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 Q8 R% X4 h8 I: G8 R! W, ?
7 ^* I* |5 a2 y' D
, e# D0 B" Z, K" pimport swarm.objectbase.SwarmImpl;, n/ z: y7 d8 x e4 b8 C8 E
import swarm.objectbase.Swarm;
. _1 |# Z/ j, R3 m iimport swarm.activity.ScheduleImpl;" x: J2 n8 @, J& \! t& E; J* p& \; m
import swarm.activity.Activity;
# Z" b4 V# L* n6 S3 ~import swarm.activity.ActionGroupImpl;
% P. u0 j* t& ?$ aimport swarm.collections.ListImpl;
5 f) ^+ F f7 L5 I0 P6 q6 Pimport swarm.defobj.Zone;
/ U7 d' Y5 L5 s2 Mimport swarm.Globals;, r* O2 L" b6 d: o2 g$ ?' `
import swarm.Selector;
) d! S9 ~* A: r. N' jimport swarm.activity.ActionGroup;
8 _# w% V9 L; G0 q( B% g7 J' S! s* [class Agent {$ F7 N$ S- N5 |( A% k
char id;
( u4 ~# @, l0 h/ x8 k' g! e6 y6 Q# ^5 C" T4 d
Agent(char id) {
: D$ A- C8 o+ D P% N' h this.id = id;
2 @4 Z. M5 x9 E4 C7 F% }6 X }
' F9 H+ l$ T8 M9 `9 ]2 l: h4 W3 a* ^: Z
public void agentStep() {
" n3 T" _" e) P2 i5 h System.out.println(id + ":" + Globals.env.getCurrentTime());
/ Z# V+ V8 w8 D9 E }
7 }' B0 b' D2 ^) A$ r2 h: z}; i6 s* T/ q# t1 T
5 z" C$ d% n2 u9 ]9 B) _" Tpublic class ActionGroupDemo extends SwarmImpl {" q7 b: P/ ]- c
ScheduleImpl schedule;& L6 _' C8 b) s+ L' \
ActionGroupImpl actionGroup;% H; L" w B6 E
ListImpl list;5 G6 b* o1 [3 j8 x' \/ t
char Id = 'a';# w) C& H# F- u0 x: }- d
. A1 P- }; X6 T0 _2 t
ActionGroupDemo(Zone aZone) {
7 e* [" V6 i+ {3 J/ ]: E super(aZone);- k1 g6 Y* x7 b. c: |& T
list = new ListImpl(aZone);% @ m3 k' |/ D1 J( W
swarmSetp();
1 a/ i1 E4 k6 V; |% V actionGroup = new ActionGroupImpl(aZone);8 E0 }( D6 P% `" c1 a0 i5 g
schedule = new ScheduleImpl(aZone);; G L# v6 B2 n* A- I D
try {
1 }- q/ n. }$ o% H5 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);% G9 Z5 f' s+ f. \2 f1 E4 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# M& f5 g: Q* F: w0 u6 P3 C' a k ; e3 a& R p% @
actionGroup.createActionForEach$message(list, agentSel);
2 B2 `; X6 ]$ i! X/ K actionGroup.createActionTo$message(this, swarmSel);
, o3 G- k. L, }. ]9 E4 h schedule.at$createAction(0, actionGroup);* P7 Q8 |7 ?' h5 x/ f
schedule.at$createAction(1, actionGroup);6 ~4 }8 x+ M8 v ^
schedule.at$createAction(2, actionGroup);+ Q T9 @( H. w4 A$ r- J6 J
* `( X, K" ?: D1 p: k. U8 ?' M' b
} catch (Exception e) {
6 J' C# @* T5 Q9 W) j& s! u e.printStackTrace(System.err);
! d! m8 \7 Y, Q6 A5 B$ @- h! S //System.out.println(e);. K6 E+ O+ z B' ? } R' U
System.exit(1);
) h6 H; f. o! `/ @4 ] }
' r7 H, d' i+ G& B% z0 }
- N* z7 F1 O; {) g3 l, D+ N7 [, g3 h5 h' D
}$ E. G; v4 b! E
* I8 L, P' I4 o private void swarmSetp() {2 P- `7 l* F: Q+ Y
list.addLast(new Agent(Id));0 r$ E* l, a% l2 B* l! A
Id++;
! [/ y: [7 D& Q }
1 m3 {; n7 Y3 Q) c4 V/ p- ^; {2 O- R( m! a U) {; B8 u( O
public Activity activateIn(Swarm context) {
' q) |9 z2 ^; c6 M super.activateIn(context);
W# Q3 u- h+ B' O* {1 T! N; e5 z schedule.activateIn(this);
; f+ f" Y A0 ~ a! B9 f! @ return getActivity();
& j& o4 c* @. a2 M6 \ }! S9 n: N! t( ~$ @- U
4 A' k: D4 c a9 } a3 }
public static void main(String[] args) {, u) h9 l7 y+ U# a2 r
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" d1 _; w1 w5 e# g
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* S# T1 z+ ~9 \" H1 c' V swarms.buildObjects(); V* X; K2 u u( h. K# t5 {
swarms.buildActions();5 K8 E" k: z( }# \" \
swarms.activateIn(null).run();
& [- V: [" i8 U0 O; s0 Z% R }
- ?0 M, K- a% U
+ v) w) |; m- M} |
|