|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : q* W/ z4 R7 F# N/ b+ v! n4 M
! c# u% s9 y* u3 ^- @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 ^& ^2 U4 o5 `: P9 k \8 s+ \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 U j3 S/ m2 Dswarm.SignatureNotFoundException
2 X0 G* d: P x at swarm.Selector.<init>(Selector.java:76)4 r' T& Y3 U5 Z7 h* |' U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* P% o, V( {* x" J" u, S( Y) w at ActionGroupDemo.main(ActionGroupDemo.java:67); ]( G/ V/ j1 H# k: V7 m6 R
: @. Y. Y; q( {; V v# _
& W8 b: ~# A& k$ Aimport swarm.objectbase.SwarmImpl;
, p( H1 O) T2 M! |4 E. c" limport swarm.objectbase.Swarm;' r% L' \" l3 X: e, ]# ~/ k
import swarm.activity.ScheduleImpl;
! h' k# l; T" _6 ^8 H0 f% Gimport swarm.activity.Activity;
0 F% Y9 {# v! E( X8 a# p1 Zimport swarm.activity.ActionGroupImpl;
! D5 f" Q# l* ^' F- w/ Q5 vimport swarm.collections.ListImpl;; g- `6 @ b# e% B
import swarm.defobj.Zone;
% ?7 Y9 w w& d$ f* } H8 D, kimport swarm.Globals;
% ?# B% Z" X `. r0 X0 dimport swarm.Selector;
/ F5 ~9 O% d; Qimport swarm.activity.ActionGroup; $ X1 m) v9 ] K1 A& O6 d! S2 e
class Agent {
& ]/ p7 Y5 a5 H; g k I0 J0 h char id;
5 Y6 I' O1 J* e" ^% x( y5 y& @% q) F" K- B9 S- N& k
Agent(char id) {5 h0 L6 B6 H& a
this.id = id;6 |! q1 t) d( ^1 W: J" ~
}
5 _3 L( b+ ^8 n5 T% b3 x- |
7 y8 q5 E z* ?7 Z& f3 b public void agentStep() {- N0 s5 ~. {" d4 m
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ x2 b, n- b2 g- h& w }
+ n5 c2 ?- z5 \) o# ?; V3 n}
1 i2 c! X/ u4 u# E/ w' \$ v! z& _* f0 m5 ?
public class ActionGroupDemo extends SwarmImpl {/ c4 u$ i* y1 |
ScheduleImpl schedule;
3 W3 m5 [2 h. e( S7 `' N ActionGroupImpl actionGroup;) c! d9 H! D! f$ g
ListImpl list;& V: l& Z1 N- P3 W, h+ G/ g
char Id = 'a';
A, L4 n2 ]8 e# k* J. F |7 G% @7 }8 k4 Y5 T* r* C5 f8 }' o
ActionGroupDemo(Zone aZone) {% V9 `, d0 h7 N7 e7 @1 @# T" j- S& f5 K
super(aZone);
! g6 @1 V! t4 o list = new ListImpl(aZone);1 \1 k5 G" O& Q' d1 B9 K
swarmSetp();8 y3 c/ L, ~( Q% ?
actionGroup = new ActionGroupImpl(aZone);# b! d$ ?- {. h3 H8 ~* M: `
schedule = new ScheduleImpl(aZone);
* _3 Y3 ~: f1 v3 j4 @' w7 ^ try {
4 u& V' n: i! \: `4 G' i Selector agentSel = new Selector(Agent.class, "agentStep", false);$ [9 v0 o, M# w7 n+ W8 X3 }: J8 M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. h% j% q0 ^/ C , v8 O9 ?+ x2 d% c
actionGroup.createActionForEach$message(list, agentSel);
( x( V6 z" m8 Y( T+ I2 m actionGroup.createActionTo$message(this, swarmSel);, W/ D7 p6 E2 S6 T' t+ ]
schedule.at$createAction(0, actionGroup);3 M' X" r% q; Y8 S3 W
schedule.at$createAction(1, actionGroup);
7 D: U: D7 q. b- A2 _+ k schedule.at$createAction(2, actionGroup);7 I4 S# S: s$ m% w9 k/ h
3 D1 P1 X, e9 p+ g" E y0 q } catch (Exception e) {
/ G! H% x$ x" a6 `7 t e.printStackTrace(System.err);- V/ D' x4 r+ z
//System.out.println(e);
8 Z* `( d4 R% j, `" h( K System.exit(1);
1 e7 q0 Y* M' }3 @+ n: Q6 @ }1 S) n/ ?. q# a
' L, W" m0 X/ Z9 g
( A, W( o5 b7 x! g6 ]4 [3 c }: e3 R' J2 b5 F. k9 Y& V# l2 j2 |
m" V/ |2 E$ p' U$ |6 D* X Q
private void swarmSetp() {
. h8 e0 Z5 U& |, I4 F0 E& N list.addLast(new Agent(Id));
3 J/ v; O) A# C7 ~) X) J8 J Id++;
* d( L: e `3 A; l: C( ^ }
) B9 a% G+ N1 D, j4 t- s9 z( c, f/ a% C( [. A: K) h
public Activity activateIn(Swarm context) {
3 w- j+ `0 G! o super.activateIn(context);- ^% @5 X3 n$ }) s6 S- S; s
schedule.activateIn(this);! c" U; i' {. \; y0 L
return getActivity();
4 x2 [* x) n5 ~/ ^0 c+ w+ o: h }
* v r) p9 e' u9 [4 n
$ v; H( \6 `6 p public static void main(String[] args) {
/ m6 J9 a3 c% A7 s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* v; }! h: T. \& \1 h N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 D! i" l2 }! V$ C
swarms.buildObjects();
% q) H/ T0 K* f; K3 B swarms.buildActions();
) [% O. W5 k$ G9 ?7 Z/ r swarms.activateIn(null).run(); K: h6 e, A2 b. T( J" E
}
, _+ g V3 S# @6 P$ _% w6 K( [- Y2 c3 n5 E6 y" {7 G: R4 M0 w
} |
|