|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 p2 }9 F y$ V1 Y4 J
o" K* L& k0 h- V Y2 {- W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, y+ W. N! n1 m" h$ Y/ `: M/ I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! S5 j9 D) ` A& D; [$ w7 v) Jswarm.SignatureNotFoundException! s/ T( r, d' v5 [+ m8 W7 r
at swarm.Selector.<init>(Selector.java:76)
2 [ W! S9 |* F i! ^4 @8 H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ ?8 | A4 w4 k) o8 J9 j' u at ActionGroupDemo.main(ActionGroupDemo.java:67)
' r6 w9 Q" T5 L0 X7 P& r3 n7 B/ k% Y3 N6 k& \) e2 w
8 O. J* p8 [* E9 A3 `+ U: l }2 @import swarm.objectbase.SwarmImpl;
/ v8 c. Y5 w" K P: uimport swarm.objectbase.Swarm;
' d a% n3 l% Y2 Y- N: t& L9 rimport swarm.activity.ScheduleImpl;
6 r8 n1 p8 O7 W! }* fimport swarm.activity.Activity;( ~! G" M {/ a7 \1 y7 \
import swarm.activity.ActionGroupImpl;
/ P6 [- k$ U8 a+ ?. }import swarm.collections.ListImpl;
7 z7 H/ R/ I# vimport swarm.defobj.Zone;
6 E% m# _2 \0 U! {( [$ s9 simport swarm.Globals;
5 L( T) i9 r' y4 _. vimport swarm.Selector;
& l, p/ V# E3 R* e# Fimport swarm.activity.ActionGroup; 8 ?" S# A! a2 M4 ^. J4 Y F& O& [
class Agent {
$ s5 w0 O' C; C7 P" c char id;) l. z( q* c9 N2 M* V& a E& Z
2 ~& G4 D! U1 t4 p7 i* w
Agent(char id) {) }+ V# j! {" Y
this.id = id;
% p! `% ~9 T! J3 u4 A3 ` }
9 @3 G6 M) |$ V3 l! s& W$ D, m( M0 ~, E1 o) |" @% E7 |
public void agentStep() {
9 i0 F% O0 d5 H9 X System.out.println(id + ":" + Globals.env.getCurrentTime());
* |+ T2 c( Z$ a( l* W& Y }
) w' B( H" I2 p5 M4 O}
# R, \# l! }+ x) r% b
: y" T6 |4 H. v: Y" ~. X' rpublic class ActionGroupDemo extends SwarmImpl { P. R# i; C5 `! q) E1 z5 n: Y$ g
ScheduleImpl schedule;' d" i4 P/ S8 t: F s, D
ActionGroupImpl actionGroup;
. A2 ], w) Q2 H: [ ListImpl list;
- F% }. U) N$ Z* z% z8 V- L8 Z char Id = 'a';1 U. |' \" f7 e1 L2 F7 c2 A
/ E# m& G, Y0 J7 ]0 X+ n+ G& ^ ActionGroupDemo(Zone aZone) {
' \7 q3 n) h$ o; i! A6 P: y9 s7 [- r; U super(aZone);7 T. w; R2 l6 Q5 o
list = new ListImpl(aZone);
( d1 w; A" G' e7 D swarmSetp();
: t# |1 ~2 x, h' s- Y: Y5 [ E/ o actionGroup = new ActionGroupImpl(aZone);, @, N1 z5 L5 M1 S9 ]# J
schedule = new ScheduleImpl(aZone);
& F2 a5 \2 m% @/ t) F$ [( E" Y try {) T/ Z+ N& `/ o% Z7 r
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 t% E9 {& D* j1 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
W2 r. O5 v. g1 a# L
8 P) k8 f5 f9 d7 M: i/ Y( p" | actionGroup.createActionForEach$message(list, agentSel);# a: c3 P3 L3 u/ B) k- h. X! G
actionGroup.createActionTo$message(this, swarmSel);
8 s+ Q7 q% `; z5 N. a- ] schedule.at$createAction(0, actionGroup);$ `8 U: U# {& B% e8 A) f
schedule.at$createAction(1, actionGroup);' N& \6 x4 ~0 } F! x k6 z
schedule.at$createAction(2, actionGroup);( B: ~1 [8 f* S1 X6 v
/ y5 F- l; D: g) A
} catch (Exception e) {
6 ]3 |( G% q( }8 E3 c, X% V e.printStackTrace(System.err);/ [% p& U% `, j# @. L8 l* |
//System.out.println(e);; {% V4 H" q+ h8 {
System.exit(1);# D2 Z! g( _; F4 E& I9 K
}
0 E8 \; y$ i P% p4 z
9 y3 z( S7 _( m( U0 E' V- i( m
}0 F" h! L5 @, q# Z2 v& v1 F
8 s( C1 u% C' \ private void swarmSetp() {% R* q) @; d5 b/ U* {9 f
list.addLast(new Agent(Id));8 l( A0 b+ [- ]3 y/ a
Id++;
' M+ V# x7 v) \7 \ }
! N- q4 w& y( i. u1 i+ S$ V& w7 F3 ]# r2 G% v4 j
public Activity activateIn(Swarm context) {# K& ~, R. y0 H# ^" r8 t6 N
super.activateIn(context);' @$ g% D& d$ n% [
schedule.activateIn(this);7 M" t) @- I& k6 }; M+ G& t
return getActivity();
6 i. R+ h" S% w8 E' U3 x }. K3 D. B) p9 U; a# a) E" b
, e) o: K7 i$ }% H1 U0 u public static void main(String[] args) {+ R- ]% H4 f0 L6 R* u1 r* n
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& W% G1 |3 a7 e+ \. C. q S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# y; U4 d* ~! T- f6 n
swarms.buildObjects();& N8 v) U+ q; D$ n. _
swarms.buildActions();
0 |; P% h6 A. v9 C4 B1 W* y, ^ swarms.activateIn(null).run();
( z5 S, R# s" h }. @* h8 _# b; k9 r- q" N2 o( @
1 z' f7 k' j2 E# @} |
|