|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' H% F. \9 @2 P* c& Z# ]' e9 h7 ^% U& `) c% l7 ^1 }4 B+ T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) a5 _: h$ h: ~0 S" O9 K! j- i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 X: ]7 L: ^; H3 U: nswarm.SignatureNotFoundException
. o2 F/ _/ ]/ N, F* l v9 U# ] at swarm.Selector.<init>(Selector.java:76)
& S/ u; b$ r5 w1 i5 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% w& N: o6 W/ W
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 X2 Y7 q, [& [$ `% X
2 l4 S- H. F) I6 [6 _, R; e7 _0 s0 r" N: R; \3 V3 I; {
import swarm.objectbase.SwarmImpl;
+ y Q$ a: h9 c# C7 Ximport swarm.objectbase.Swarm;
1 e& R' I) x0 P% [6 qimport swarm.activity.ScheduleImpl;, P* K$ p7 ` z1 E
import swarm.activity.Activity;
. Q6 K1 ]- L+ E+ X1 cimport swarm.activity.ActionGroupImpl;. |# P) Q; f3 h p+ I! x
import swarm.collections.ListImpl;
2 J/ A! V1 L, timport swarm.defobj.Zone; % {, W8 ]" W9 i- p1 G9 r
import swarm.Globals;
: u9 V+ E2 a# ?' ^import swarm.Selector;
, l# E2 F. {! S" W- Oimport swarm.activity.ActionGroup; 8 }/ K6 |: T+ y& }$ o) @
class Agent {' \* \6 c1 e7 M3 J. P
char id;8 Z% s) V1 ]( \# f: L3 w. _# d
: Y1 Z. J! k6 U1 W) z5 ~ Agent(char id) {
5 P. P) {: X7 x& q, r% A! A! G8 N this.id = id;
1 R- Q6 a& L5 Z7 P n7 o }& J# s+ ^( K/ S6 }1 B
0 h" z, I5 S1 G: r3 C; }. [
public void agentStep() {
, {$ r F! \7 o6 |1 n' _ System.out.println(id + ":" + Globals.env.getCurrentTime()); C1 O1 d9 M) ] L7 f" M: x6 H! o
}7 h( o2 @. o! C0 O
}
) [1 H( t- u! q5 A" N7 }8 \2 e2 Q/ D: F$ x4 B4 S }
public class ActionGroupDemo extends SwarmImpl {1 O! h+ N( s3 @3 b3 N5 W/ O
ScheduleImpl schedule;
: v' y6 Z4 J( b ActionGroupImpl actionGroup;
: V; ?( g8 \* ~ ~ ListImpl list;* P9 Y4 _2 [) n) N5 ~3 I: R5 x
char Id = 'a';/ S" K( H ]" B9 h0 u* s. I
) k" t8 |3 A3 B1 c5 Q* A9 A
ActionGroupDemo(Zone aZone) {9 [/ e i, f' d ~: F
super(aZone);
5 W1 p4 _' s" u! c% f; f list = new ListImpl(aZone);
- z: a$ t* }. g swarmSetp();- I6 O" R7 Z4 S" E& W
actionGroup = new ActionGroupImpl(aZone);, T% N$ r* M% j
schedule = new ScheduleImpl(aZone);
6 {/ l/ I+ v1 y/ `+ F try {
% H" `; ]; W Y/ Z$ k, R9 W Selector agentSel = new Selector(Agent.class, "agentStep", false);
% E D! s* s( s+ u o. o6 l: `; n Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& Q; F3 X" L' i" G
( l( E4 ^' W& n$ b
actionGroup.createActionForEach$message(list, agentSel);
* m* T- l! v3 M- C4 n" O9 s; } actionGroup.createActionTo$message(this, swarmSel);
" ?4 m2 \- O3 i schedule.at$createAction(0, actionGroup);7 m" j, s3 i% ^% K! }7 K5 f
schedule.at$createAction(1, actionGroup);. x: v* r1 w8 s. A
schedule.at$createAction(2, actionGroup);
5 Y7 C) ?% g0 w- s9 g1 V
5 ]( i* u7 O) j- f } catch (Exception e) {
) a: u5 F m! D6 k5 f5 l4 F9 Q e.printStackTrace(System.err);
8 l8 h+ [2 S, G; `# l ]$ A //System.out.println(e);5 r% O6 `$ @6 }
System.exit(1);2 a. Q9 T# a6 o G Y) a
}
+ }( I" _) Y8 c3 q$ |8 e2 X3 s$ W' z, V: l, _0 |
! j- h! e* ~# o% V" o7 Z3 u9 i }- p1 r) k( J; \4 w
0 D) P& L! X8 E3 R& X
private void swarmSetp() {
( R4 S6 O# }( |9 c2 T list.addLast(new Agent(Id));4 B" F1 K3 g# ~
Id++;8 E% j8 w. g8 e/ i
}. M. s J$ N; ?+ n. ~1 k% s0 L* ~
( B( u: H, A* q# n; e* W8 J public Activity activateIn(Swarm context) {
3 E, \( j6 ?8 i. u super.activateIn(context);
8 e* j3 m& v2 s2 l schedule.activateIn(this);
8 A$ E* Z4 o! P) A# `: Y return getActivity();
( o2 L8 H) t/ h0 g7 C3 E }
" { M+ g( C v: Z6 T
h7 [7 ]% Q6 `2 {7 w4 `6 i public static void main(String[] args) {/ F) C' V' W/ h& o3 t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& E6 B: L! E: L$ V8 t [: u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! D+ z* f8 }+ I: K- _4 {* f$ s
swarms.buildObjects();8 ]" N1 N: C! L, \7 L
swarms.buildActions();
4 h" }2 I# K& l* k, B8 s: U8 c: } swarms.activateIn(null).run();8 F' O5 J) [0 a/ l7 Q2 H
}9 X8 o( C& O' _5 P9 \3 M
- N5 G5 B% O2 e* S. h7 R: A! i
} |
|