|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 [! j' u; j/ L6 Z
`; P' y$ x: Y! s: w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* h1 |- K5 `) A ]6 A* F. c) l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ B' }2 S+ U+ ?' ~- Mswarm.SignatureNotFoundException) t% F* d& W* B5 n) H
at swarm.Selector.<init>(Selector.java:76)
' K, q: u2 H- [/ z: K: j- x at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) A& D2 Z6 ^. h+ W2 d at ActionGroupDemo.main(ActionGroupDemo.java:67)
- A$ Q8 m1 ]: I. c- J5 f: U1 k' {' \
5 p7 W+ S7 `9 v5 |% E7 N
import swarm.objectbase.SwarmImpl;- W- }( t: Y+ N' |" d
import swarm.objectbase.Swarm;! h7 D/ Q) `3 F) m0 d
import swarm.activity.ScheduleImpl;
: y d' \7 c% Z R. Ximport swarm.activity.Activity;) K! W8 {$ N7 u% x
import swarm.activity.ActionGroupImpl;5 q9 G. D% C, e {: G8 E' ?3 J: r
import swarm.collections.ListImpl;
6 S4 d' G8 ^' k7 C% }! C# T5 simport swarm.defobj.Zone; ' B4 d* k# B" }3 m3 g9 m) S% r2 t
import swarm.Globals;
! @6 u* W, g+ w! H" J6 l' X6 ?" o# dimport swarm.Selector;7 m g, A Z. c7 V% _9 S
import swarm.activity.ActionGroup; ) s1 _: A7 }3 F3 b: v
class Agent {
6 j; E5 d6 W+ z' g+ h9 s2 l* c char id;+ W! x9 l* ?" y1 n8 b
+ E/ @4 I: u7 ~1 G+ B$ x Agent(char id) {8 e; Y: `8 g0 h/ r2 B$ K# \6 e
this.id = id;
4 a3 A1 c/ Y. ^, ~* W2 w# T7 J8 Q }9 @! G1 {7 t. K, M( [- V5 _+ i, \
- I2 o$ c0 U! ] y% a8 [: Y public void agentStep() {
+ N0 z# v. @: n. F3 ?: C4 I System.out.println(id + ":" + Globals.env.getCurrentTime());
" W! y! o1 i5 N9 @, B% I) y, X }2 @( T: _1 p& F5 Z) h5 h
}
2 W$ v# M2 @3 |
( {+ L/ b: |5 s- qpublic class ActionGroupDemo extends SwarmImpl {
# O' T# s+ a" E8 v4 d/ H ScheduleImpl schedule;1 H$ [5 [# B: t3 k$ B
ActionGroupImpl actionGroup;
# R( k) K/ T8 ?8 { ListImpl list;4 J |6 }4 z8 H+ p9 j. @
char Id = 'a';' C3 X" ?9 g0 F. M5 S$ e
8 b/ S& {, i* e/ w- g' J# d
ActionGroupDemo(Zone aZone) {% i! q f3 z- O8 j V3 m8 e
super(aZone);- X+ A4 {3 u, J9 A. U- a
list = new ListImpl(aZone);
1 l: T' {0 @! h& k. S1 E, t v swarmSetp();2 ]( e3 ^2 U- _% M
actionGroup = new ActionGroupImpl(aZone);7 I! `2 X5 d2 j$ S4 n2 z
schedule = new ScheduleImpl(aZone);
9 j6 K6 c9 O& x4 X- ? try {2 Y: R6 ^- K2 T0 I C
Selector agentSel = new Selector(Agent.class, "agentStep", false);! Q% G, y! ?4 S' v) z" V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ e: }/ q2 F" _+ |( D
o" H2 z! _7 p/ {
actionGroup.createActionForEach$message(list, agentSel);( J4 j; @8 f v; ?
actionGroup.createActionTo$message(this, swarmSel);$ q# g! W- i& s- k9 t9 |
schedule.at$createAction(0, actionGroup);
& B$ Q0 ]) D& _6 t' A3 w$ X; O schedule.at$createAction(1, actionGroup); P/ O6 ] ^, W/ F7 _
schedule.at$createAction(2, actionGroup);
* T: c9 `8 j$ t, `% P3 j$ r/ t& L
) I3 c" s* m3 b& D5 o7 h' o } catch (Exception e) {
- X! W5 N' i3 ^) N e.printStackTrace(System.err);2 P8 O0 }* A9 `! n& e
//System.out.println(e);
3 s/ i; c- x& y System.exit(1);6 b8 D: P7 M: A; t! n
}
' L8 k; O+ Z G# `5 U3 Y
: y' ^9 X5 l* f# i2 t) Y3 v# _- y: d7 v% x& {# L& i; B
}
& {! B7 R4 f1 k, \" r2 c* f: b' ~6 d2 d& B' r# k+ R
private void swarmSetp() {
! e+ A& L6 {3 e# V4 B, z list.addLast(new Agent(Id));5 |& B$ _$ ?/ O X
Id++;
; a( k+ c2 B( @2 I% N }
7 [) `3 _; i# l
7 I% I1 H9 o: L( E8 c public Activity activateIn(Swarm context) {1 q- w, S3 r; t" W- o% [
super.activateIn(context);- E# y! f: [2 p" w
schedule.activateIn(this);
5 Y7 w# u* G8 |3 _! m7 e return getActivity();) m' o# J' ?3 V! [+ m3 {2 Q" L
}5 d6 Y7 h4 E9 X
" G( z; M* g# {$ i public static void main(String[] args) {
# M- ~, ^7 o2 n( U$ L+ { Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 v% L& b5 f2 j7 |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* Y" B8 Y5 c( p+ }$ b5 e
swarms.buildObjects();
) A; @0 c2 }. `: p7 e swarms.buildActions();
. K& C8 A# k6 J s# P, P) O swarms.activateIn(null).run();+ B/ y; Q, d8 t) n% a5 |
}3 | f7 U k* e0 i
8 n/ m3 G6 t J# p f} |
|