|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / {7 R! c7 O0 T4 b9 R
4 Q+ L8 F" v0 r7 ^0 b S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 }+ m, p b$ U& b' Y: o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 C% x; C8 ?, z8 U" S
swarm.SignatureNotFoundException
: J6 o# D, P. ]$ x at swarm.Selector.<init>(Selector.java:76)
8 {4 g0 C' \; A' U P4 y0 H: i% ~6 W7 E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# ]8 J3 x9 Q' m W' z% G" e& [" I at ActionGroupDemo.main(ActionGroupDemo.java:67)
! C! v% n$ c# b5 \: P9 H( I3 K2 |# v0 T
% F) S! n3 f6 O4 l# Y1 x: Q
import swarm.objectbase.SwarmImpl;; s" g% z4 ?7 o4 k! r
import swarm.objectbase.Swarm;
! _) a8 K. w rimport swarm.activity.ScheduleImpl;* t: P( V5 R% h9 C d0 [8 q; N5 f
import swarm.activity.Activity;
/ ?- h, \( D7 J; H2 N) k- Timport swarm.activity.ActionGroupImpl; m8 k$ `+ F% e' @8 v, u1 `
import swarm.collections.ListImpl;7 C# I* _0 e: |0 U* _) B
import swarm.defobj.Zone;
2 [: ~4 b+ S2 ]* f) Nimport swarm.Globals;0 m' _. |" I. B9 \) T$ H+ p2 R3 C! N
import swarm.Selector;
6 H. ?% [8 V! Fimport swarm.activity.ActionGroup;
i* W) O/ C( A! z0 ]class Agent {
+ d. ~* h8 d3 x6 h) n char id;% p; d6 V1 _0 }" Z! r8 z
4 `/ K% G2 S# h9 ^. W0 B, ?
Agent(char id) {
: Q' C7 n3 h/ i this.id = id;5 k# l v1 Z$ u* h! }' ~
}
$ P' s) {9 A/ t* ~6 d& j7 M7 ~; k3 R& Q. d8 N& T* _5 r( \0 ^
public void agentStep() {
- d8 x- q/ V X8 [- J1 M8 S: k System.out.println(id + ":" + Globals.env.getCurrentTime());
+ U* G0 g1 B v }6 ~0 Q& C8 h. F) ?7 b
}. M6 |% Y9 E& S- J0 q# {% ]" ^
/ y( [, s6 l2 a+ q) tpublic class ActionGroupDemo extends SwarmImpl {
5 @, Q' u( F* G+ M Z ScheduleImpl schedule;
( H' x. L+ b/ s @* s0 E ActionGroupImpl actionGroup;
" L3 p5 \8 l& V ListImpl list;8 O+ R h" T. H( {
char Id = 'a';
* l, B# u& @, `& m
5 u: B6 Y G5 I6 J$ ` D ActionGroupDemo(Zone aZone) {; i3 h3 I" `6 `- f) J
super(aZone);9 ^& ~7 x7 t5 l% A
list = new ListImpl(aZone);1 F9 u0 }& h, {3 ]5 F
swarmSetp();
: S: H$ i- a$ q6 Z! I1 s' h actionGroup = new ActionGroupImpl(aZone);
4 @! o# B! S9 V2 Q" Q- e8 t schedule = new ScheduleImpl(aZone);
, G) ?& o: ]- C) W# J3 F3 |/ S3 X m0 S try {2 D0 F6 u7 \9 M' m) u$ N) F$ C
Selector agentSel = new Selector(Agent.class, "agentStep", false);" E# \/ t2 ?- u% @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
L. U: t( e) q8 m7 w , H4 i8 F- s" x& `( v
actionGroup.createActionForEach$message(list, agentSel);4 a2 E7 {$ b" x/ l; u3 c; y/ O0 k
actionGroup.createActionTo$message(this, swarmSel);
% c* |/ V0 P2 e schedule.at$createAction(0, actionGroup); c/ N3 { Z6 p* T
schedule.at$createAction(1, actionGroup);
* J2 C: f) M' p" Y" X schedule.at$createAction(2, actionGroup);
1 j) v# J; P4 Y: B- b, t) g+ l4 {. p& w
2 H- I9 w) I! t) K1 S } catch (Exception e) {
$ r% r! S/ S" Q e.printStackTrace(System.err);- x: y$ k8 L3 |/ t4 j4 P* o
//System.out.println(e); ?* y. E9 K; O1 |2 Z5 T9 U
System.exit(1);
0 W% S% m& v* ^8 b1 \& e }
5 ]+ Q% M/ m j9 c' N
( x3 V/ G; x2 \' k) V: b: t: V2 b6 Y: u9 u
}
& g8 q- |0 v% v8 X8 q3 L
, k% B- A+ Q, G; [ private void swarmSetp() {# t- i7 R/ j4 y: h& m$ W2 E. ~
list.addLast(new Agent(Id));4 t, N7 X! I4 K
Id++;. d) i7 k) ?0 }
}
y4 s9 a4 m3 q3 D
# U0 a- A) t8 v4 g; Q public Activity activateIn(Swarm context) {9 H E% O$ q9 v
super.activateIn(context);
5 `. u0 T; i3 b# {+ e/ | schedule.activateIn(this);
4 M! a6 B3 J, R3 B! o0 Z" U$ Y return getActivity();4 w& d5 M1 z4 x _/ Y
}. V8 ?* r+ o( p5 I
6 V1 r; H1 \! z# M: m- }% p public static void main(String[] args) {
`: t$ p: A; g/ Z2 v/ W# N3 i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 ` @( H5 U( v- @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ s0 s- `) o2 ?8 O# M: L4 R9 j swarms.buildObjects();- _8 Z0 {6 g$ _' L+ H( y) ]4 C
swarms.buildActions();, Y5 t/ I7 D! X2 j" \0 \
swarms.activateIn(null).run();2 n, }: ]! A. Z+ g
}
6 [% T8 ~( x3 t5 @6 k% r) W# F% |$ j8 C6 o* s
} |
|