|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% ]- V9 T( s6 X& Z1 \% \) j+ }. v, K( p" c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
k; s7 |, ^6 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 c$ i7 Q0 I; i( v+ ?0 p. v1 r {swarm.SignatureNotFoundException
( `( Y& n5 J/ A8 V1 X. x at swarm.Selector.<init>(Selector.java:76)7 A8 O0 ~* `* ?6 a9 o7 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( n7 ~* H4 j+ m. m( A" n
at ActionGroupDemo.main(ActionGroupDemo.java:67) h K% X9 `/ W) Q
" M8 o# W+ f8 I$ T! T
3 I( R, H" O! t: u# j T/ l7 c w
import swarm.objectbase.SwarmImpl;4 q2 \8 H2 L; O- v
import swarm.objectbase.Swarm;
! \! ~4 Z' X C2 G6 Z; I# Vimport swarm.activity.ScheduleImpl;
/ {/ |* i7 b7 t& T: _, k! }2 limport swarm.activity.Activity;
) F7 B) Y4 K& R1 N: ]& m4 Aimport swarm.activity.ActionGroupImpl;: A# T' S8 g t( x
import swarm.collections.ListImpl;6 f6 m. G" z! Q e* z' h" z; a) M# x
import swarm.defobj.Zone;
# r3 w5 B; y6 C/ f/ ^& D) f* R6 Timport swarm.Globals; [! a$ [8 ?9 \8 v6 B0 B
import swarm.Selector;
2 U# l$ @3 l: G! @7 L! u% Mimport swarm.activity.ActionGroup; ; t" R2 _9 |! p/ e* c+ P
class Agent {
# ?. }% }/ ^. K. `; u# h; u char id;
8 b$ v" F! J5 V7 {% T
+ E; ]/ G" U! c+ t6 n" P9 S( r Agent(char id) {
" k, D; @8 S5 H# P# T this.id = id;) {4 v9 v& X0 r) \( f% D! W8 [5 d
}
+ g* e3 E' l) @. S( v+ T) ~: O; Z5 B" C# b4 C" a- P; h
public void agentStep() {5 {+ T6 R# j- K) Y5 o0 A
System.out.println(id + ":" + Globals.env.getCurrentTime());0 v5 @' D4 I0 }0 O1 l+ F6 S
}4 i8 v/ G, g8 [: }- ^
}
- r$ m* X; a+ d- B* e8 o& s; P
5 B; X0 }$ S. \7 V/ Z# t+ Y9 apublic class ActionGroupDemo extends SwarmImpl {8 R q, @2 N" ]
ScheduleImpl schedule;
$ a+ c% Y$ D6 L0 f- |+ I) y ActionGroupImpl actionGroup;
& `9 M1 s1 o) L- y6 p- p8 s ListImpl list;) N. [, I' h4 g a7 S
char Id = 'a';4 o' g4 E0 m0 ~+ ? x% E
1 |. @% e$ m/ @3 x0 C) Z
ActionGroupDemo(Zone aZone) {. Q: W _* d% S2 A" F! ?+ ]( c0 k
super(aZone);! [4 s5 z% K4 s9 r6 ^8 x( D( k
list = new ListImpl(aZone);
' H9 q* B( Y! J5 `! h+ | swarmSetp();0 @+ \4 l q3 {1 J! v
actionGroup = new ActionGroupImpl(aZone);1 H" d3 t1 O0 p% `. T$ h x
schedule = new ScheduleImpl(aZone);. g0 [# u+ K Y4 t% ?
try {
$ e: b; M- }9 o: K; F Selector agentSel = new Selector(Agent.class, "agentStep", false);7 K, i% i. N2 g/ a6 u: o
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) Q# g/ e8 O& P: B' C
; B1 Q4 \8 `9 T$ M! ^9 p$ \ actionGroup.createActionForEach$message(list, agentSel);
" V) t* ^7 Z& ~5 V actionGroup.createActionTo$message(this, swarmSel);
- O( i6 a- f( p* v" u7 n0 C schedule.at$createAction(0, actionGroup);
|: ?, T4 J4 ?* \0 v5 G* a! O4 a schedule.at$createAction(1, actionGroup);
4 N0 x( d% s0 {/ V2 p& N# M schedule.at$createAction(2, actionGroup);
2 f5 u. e3 a d) H+ v
0 p! w, _/ c# @1 M# ^/ q } catch (Exception e) {
& U+ F$ N, a0 g+ i) F5 K e.printStackTrace(System.err);% q9 z; a; z0 |5 t4 j6 m6 Q$ I
//System.out.println(e);6 u* S# V$ j% R* Y) d
System.exit(1);7 y, `5 t& r- }; Y
}
$ q' @# f( m+ ^4 C' y4 u, M; C0 \' t8 H" N% @! E+ n. n
* |8 j1 C. ]4 G" r0 h: A, y
}
$ P' D5 w v- D5 Q, \* P$ l5 K& J4 P4 a, p1 G4 _# R8 C6 n) p
private void swarmSetp() {0 o2 n# X) S) j
list.addLast(new Agent(Id));, f% P' f' W' O8 n+ \, }) A/ E% n
Id++;+ @* y! T# E$ ]1 g' a+ f, k
}# n8 q6 X$ J4 A h: b
9 s- {( b/ ?- q3 x, O2 J. O7 R- j
public Activity activateIn(Swarm context) {% j3 ]; ]# t1 g' Y3 l, c
super.activateIn(context);) W0 L$ _1 l Y% A; o" ?$ r6 ?
schedule.activateIn(this);* p! J' L$ c5 S5 N
return getActivity();3 ?/ K5 R7 I7 h% D9 M: |1 Q
}
) Q0 X& ~$ G- `2 G+ \" j3 O
+ _* L+ ]' @/ u- a J; B' n public static void main(String[] args) {
! V" Y, f& t, h S4 x( `3 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ R$ Z8 _# t6 X4 b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* ~; f& [ q0 `8 U
swarms.buildObjects();
8 P, z G1 {0 j* b5 R. Z2 ^, ~' K swarms.buildActions();3 w9 Z+ v" ?) Q3 b* _2 N/ k
swarms.activateIn(null).run(); v4 T+ V" K/ \1 ?& y
}
+ }8 \7 [ w% W, Z. t; u/ k# @# W1 F/ V+ [$ U7 H- d2 T# f. j1 H
} |
|