|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 ^/ k* r) _ `2 K, M, l" v' e8 d9 T+ A' T) Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ v" ]1 u$ z7 g* X! l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( }9 ^$ A6 d( ^$ V
swarm.SignatureNotFoundException
4 `# S7 V D0 p* `0 Z9 _ at swarm.Selector.<init>(Selector.java:76)
1 D- T* y c$ w2 }% ] at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ c4 u* y2 S3 [* E4 v# O
at ActionGroupDemo.main(ActionGroupDemo.java:67)
" Q& }8 @' O! t7 q6 t
4 |! z C' a3 |; r" j6 x4 ]" }8 H+ w b
import swarm.objectbase.SwarmImpl;
$ R6 f5 M9 E( z" m3 |6 m3 O# T6 timport swarm.objectbase.Swarm;$ ~2 ^& F* W+ v: g) r
import swarm.activity.ScheduleImpl;
6 ?2 B2 K3 g# P1 {5 E# [import swarm.activity.Activity;8 ?2 z" W- s; t" k- E. ^% x0 g- U
import swarm.activity.ActionGroupImpl;0 @3 ?7 e. j) l; |# B( J
import swarm.collections.ListImpl;
; e2 w- } F7 i1 K6 a$ R; Ximport swarm.defobj.Zone;
1 f. ?: r b o2 |4 iimport swarm.Globals;
- Z5 b* p, [) j% T8 R7 himport swarm.Selector;+ ?, c& w. k! ]; g* V- ]* e* D
import swarm.activity.ActionGroup; ; O, [1 p9 u0 ~0 h; f
class Agent {
" J" r) p% ?0 {9 j9 J, c char id;! f$ Y0 N- k- B; e
) }2 q3 z" z3 m8 F6 h
Agent(char id) {# S' I6 Y0 Y: f- O
this.id = id;
4 p) d/ d* `0 p' Y }
$ P. {0 o! F1 L# c) u) R5 L! d6 @
- i: Y% k( B( |, ^0 ]9 n6 X7 Y- U public void agentStep() {6 e" N3 M. c3 o( X
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 m, Z" ~% i. l! @ i. l5 B6 S }- Q# k: t! w& Z2 N
}
3 I0 ^' C, u, {% h
5 @, y3 p1 U- i( Q8 F' p/ Spublic class ActionGroupDemo extends SwarmImpl {) y `- O6 ^, o* g: x. D( h" F
ScheduleImpl schedule;: b1 T6 o ? P2 y
ActionGroupImpl actionGroup;
2 l8 ~. ~- X% P% `$ K9 ]) j5 ] ListImpl list;7 k. H" Y/ V3 Y1 b' c
char Id = 'a';6 N& U/ X. O. u& ~: D1 h& x- I: [
; O. Z; t% d8 w' p ActionGroupDemo(Zone aZone) {
, K" v X j- e. j: N super(aZone);0 |. m/ ~3 o0 t% S" E! I
list = new ListImpl(aZone);2 e0 v H2 E. i/ X* W; g
swarmSetp();. f' k) y; D- A8 a+ @
actionGroup = new ActionGroupImpl(aZone);- r# f( j) H9 N0 l y, V: f
schedule = new ScheduleImpl(aZone);& q- w, K* g' f0 v9 N
try {! T( b9 v% ?" |+ b8 t0 [
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 c0 n3 y/ }! a/ ^ p1 O Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& ?2 w( x+ x+ A( s" a' C
3 ]( ~0 E0 j! m/ `, I l; b; v- W actionGroup.createActionForEach$message(list, agentSel);' V |0 R, S2 Q7 C1 U
actionGroup.createActionTo$message(this, swarmSel);; {: z# P1 ^2 @2 K. {7 C- H
schedule.at$createAction(0, actionGroup);
7 T2 w9 o8 Q5 g' ]( B; X: Q schedule.at$createAction(1, actionGroup);% I- w5 h! D3 T9 z" S8 k
schedule.at$createAction(2, actionGroup);' Y7 G/ R& A! ~* R3 u
' m" ^% H% a' p3 {( r, ^; D
} catch (Exception e) {
, P3 m& x3 Y8 ^0 R( g. Q* v e.printStackTrace(System.err);5 |8 O H- w9 L7 V5 z
//System.out.println(e);$ r6 G% Y; ^. x8 m/ H. `, `
System.exit(1);
0 \; h- n2 d% d& Q8 | }
! O' L; O: Z% n
1 [4 _$ ~( u. ?
: o9 ^: } o% C. [$ p }5 j; d G7 |/ k
' r$ U& }; ?0 V8 F
private void swarmSetp() {" L& Y. Z7 g. V/ r8 j
list.addLast(new Agent(Id));+ Q. }* w. Q6 Z3 y4 d) o7 j' D! e
Id++;% i' j+ R9 Z% Z
}
( z& \: h3 H6 m6 ?' E
8 @+ Y! j4 H( U: F0 Z public Activity activateIn(Swarm context) {: g7 Z$ ]5 X& l( |
super.activateIn(context);
3 F3 q/ g, }' Z9 A schedule.activateIn(this);! m3 E* U9 I) }/ D4 S1 U
return getActivity();" P$ W8 C9 c e% i6 Z5 T, F% |
}; W8 o* l% Y6 j
- M) V S k4 f& V/ U! u public static void main(String[] args) {
5 K. J7 F5 }8 b: U8 T9 i, J Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ D w0 d$ l- O Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- S4 X& T9 R3 U( e* m8 @
swarms.buildObjects();
$ @( u& ?3 U- z' \# i swarms.buildActions();. k8 D4 z2 }6 H3 b6 ?
swarms.activateIn(null).run();
" V, h' d( ~. X" W6 o% E5 {& x$ O }
8 E, [& K r; g$ Z1 q! m g. F. z3 R. u! N: q
} |
|