|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 r; [% i; T& Q9 Z) O' @
' I# a8 [, J0 d v! x2 j% h* J- V4 M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# S! j8 _8 L' h. g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: `0 M, y/ i* b* K1 `* p( ^swarm.SignatureNotFoundException
5 s# V4 @, K6 {6 l: M* [: u# d at swarm.Selector.<init>(Selector.java:76)+ I$ a* x5 f) o* h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 B$ `9 l$ t; t: d& u s" [ L at ActionGroupDemo.main(ActionGroupDemo.java:67)! v9 P& A& F6 K }8 J9 b/ v+ X" W) |
% G, H* Q. o& q' d' O+ ?+ C
8 w" L/ g) ~: v' Fimport swarm.objectbase.SwarmImpl;
+ j$ l6 W& d$ W* ^import swarm.objectbase.Swarm;- [+ t1 [% s! N( k! R/ x4 V
import swarm.activity.ScheduleImpl;
) A: V6 Z( _# j! R5 T# ?import swarm.activity.Activity;5 N9 O& i+ w$ i6 c
import swarm.activity.ActionGroupImpl;
+ L" T3 B1 M3 I9 @/ Gimport swarm.collections.ListImpl;
2 z5 t* ]0 l# Bimport swarm.defobj.Zone; 1 M1 A+ X% n; \ C+ U( I
import swarm.Globals;& b% R' R) ]! X/ Z3 J
import swarm.Selector;( W% z( P- w% k& h, [ A L7 g, K& r
import swarm.activity.ActionGroup; 8 h" }* x; {$ U
class Agent {
7 s) l3 H0 t. l, t7 i' ]& i char id;- H( X7 G& g- B! P1 ~0 J
& c4 q) W X& K' l Agent(char id) {
7 ], d/ z2 r" Y! D this.id = id;* O5 @7 O8 V- V2 d) j" K
}
! S! p8 i k+ t4 Y* p* v( y* @% k2 p4 q* X8 m. _3 D2 R, z( y
public void agentStep() {8 p3 k; @( A9 }2 b7 k% Q5 E
System.out.println(id + ":" + Globals.env.getCurrentTime()); k1 ^1 g" i& y2 _1 E2 P( ^
}
1 o9 s: {3 l2 d0 V) ~}2 W# G% \6 H3 |& o
. R& K. x6 u, T( Y3 f$ Epublic class ActionGroupDemo extends SwarmImpl {- B/ W' U0 u8 X( U/ ?% _/ a" N
ScheduleImpl schedule;6 \/ c/ S, p# _& K+ e$ N' g
ActionGroupImpl actionGroup;5 \) b0 S# O( P/ c4 v
ListImpl list;2 |4 {6 T* j& E( o1 U/ J
char Id = 'a';7 [" {! h) |3 k* g" G( P
7 D- Z/ C1 q i6 z! l, P+ a
ActionGroupDemo(Zone aZone) {
: H- ^9 Z- S* {3 S super(aZone);
# S* g. W- ?4 v( J! p. x' S/ d) f list = new ListImpl(aZone);
2 u' `5 v: U& i& W swarmSetp();7 g5 ^- j# g3 ]' t* y% |
actionGroup = new ActionGroupImpl(aZone);. l4 t6 U2 J% I/ i& Z) L5 J% u$ I% Z
schedule = new ScheduleImpl(aZone);. C# u* i. g# Q j4 q* R
try {9 b# J$ K3 w& I: c) G
Selector agentSel = new Selector(Agent.class, "agentStep", false);" N8 s6 Q, L$ S; P* d- l& T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ x4 `7 @1 w+ H9 }
& L4 I! i" M' ?' I' f9 q2 ~) w
actionGroup.createActionForEach$message(list, agentSel);
/ C: J9 j" ?+ F actionGroup.createActionTo$message(this, swarmSel);# o' `# s$ ^ o J, W5 S
schedule.at$createAction(0, actionGroup);
* c9 U1 o0 B* R5 X$ B) F schedule.at$createAction(1, actionGroup);! \. I, y+ c( E `5 ~
schedule.at$createAction(2, actionGroup);
1 z$ G D3 Z! G5 |( ?3 i) d) }/ O. p: \5 O8 W0 Y, t) e
} catch (Exception e) {
# b8 {" z* ^0 I3 N |4 a& c e.printStackTrace(System.err);- F. N+ m2 E: {0 G, n
//System.out.println(e);
% N( T" _) P9 M1 X. O9 D System.exit(1);. E" C( q* f. U
}2 \6 C( Q6 w' i& Q' O+ X
5 p6 y" P6 G* [: p! ~% a- Z# y% y
! I7 S8 b: d+ y0 N. o$ ~ }# K; `! R0 R1 j. c) F9 A
. N$ |4 Y" N- K f0 A private void swarmSetp() {' Y& {& i$ c) o t& s% n
list.addLast(new Agent(Id));
/ G* R8 l/ Y. r1 p C, ` Id++;
) {7 v" k0 ^& ^4 q5 E- _ }
. ]( h9 X& k N p8 q# ^# c3 J# i7 v: J1 o) L7 ?: B
public Activity activateIn(Swarm context) {
- f# h" ^! @1 Q/ g7 `0 Y7 V super.activateIn(context);& B% X; `. O9 l* }2 V
schedule.activateIn(this);
1 D G4 h2 q1 M! g return getActivity();: t& I; f6 l% C$ X3 `
}7 b/ K5 L! `. ~0 P# \- z {8 n) o
% {$ e# k N+ R0 O public static void main(String[] args) {
0 f& z, v& _( h! ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" c0 l3 J8 j$ m( ^' j6 [7 c; ]
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! q, i, a2 a5 _ C1 I swarms.buildObjects();
2 v3 l% [0 Z" S, E3 z2 d4 q swarms.buildActions();2 B/ Z/ [. b3 W6 }- R% M# s
swarms.activateIn(null).run();' K; |6 G1 B* U& C
}3 L+ ~+ Z6 D9 q: c) L% z# l
; {0 ?) ~0 q: `) X+ Z# Q v4 K} |
|