|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' L4 Y4 n! E0 L! t" `* Q
1 w1 M8 s9 C' s# q C1 j! }4 k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 @, [, x3 t' s9 D) `6 B3 P& b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ U& _- t8 N6 d1 C$ v' h5 V
swarm.SignatureNotFoundException) |( p5 [% U: M; B: X
at swarm.Selector.<init>(Selector.java:76)
8 a% o" u- v( G: a$ M2 h at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ _ q$ M2 k3 Q" h at ActionGroupDemo.main(ActionGroupDemo.java:67)
) U( m; b' w! n' `0 `0 E3 [( C$ ~2 B" g* e) @9 {) c
' P% Q0 S% n6 W# m3 y$ ^$ Dimport swarm.objectbase.SwarmImpl;
, J* f( U" o* {import swarm.objectbase.Swarm;
4 Y1 s* {( ]5 A! ~* B5 Jimport swarm.activity.ScheduleImpl;
0 z& q" u) a3 C. N& f5 X8 Iimport swarm.activity.Activity;* P$ J/ U# e8 x% _8 J8 h
import swarm.activity.ActionGroupImpl;* J0 b7 i" r0 V1 G: f) r( u
import swarm.collections.ListImpl;# P% g5 l( _# O8 j
import swarm.defobj.Zone; $ x# }6 [6 }* b4 v6 L' a
import swarm.Globals;+ B0 ^( Q$ `$ E P3 i& l
import swarm.Selector;
1 d' p. k" U$ E7 \( Himport swarm.activity.ActionGroup;
s0 \, t( `" f. ]; F- }0 w* n' E2 H- Aclass Agent {8 J$ z# @. H9 N: I2 u
char id;
5 d; S& x" ~& @: p5 E% t# N5 k3 x7 C& l) [8 f( I0 m2 j
Agent(char id) {
; Q# T6 ^4 S v: }1 O) I& ] this.id = id;9 X) m8 A. U+ b& y& C! `
}% }* U: j- y! N0 ?; x, ~
: i( o" B. Q/ X/ a
public void agentStep() {) O4 ^- D1 y% Y. K5 Y& e
System.out.println(id + ":" + Globals.env.getCurrentTime());3 r3 q# S% Y/ _0 ^: W+ v2 v- w
}
0 g4 [( c, [0 h D}( N' e7 u" J" ^" f
' \: d+ C+ H( v; D. N0 @" ~8 Y- f' @
public class ActionGroupDemo extends SwarmImpl {
! R( Y+ f) o6 y: J1 O/ m( t ScheduleImpl schedule;/ {; W0 v6 M! a
ActionGroupImpl actionGroup;
; U& f" X( [# x ListImpl list;
* z& i# F9 _' T# ?7 ~ g char Id = 'a';
/ G6 d! b$ W8 Z& [+ Z+ @: W A$ u$ l* G% b* f, m$ {3 m- K% U
ActionGroupDemo(Zone aZone) {- ?/ X3 X5 z7 X
super(aZone);
. H v( S: g+ ?" F" \8 I2 n- k, Q list = new ListImpl(aZone);
5 h$ _4 N g0 D" O# L# A8 n0 b, E swarmSetp();: S& Y' i) K2 J+ y7 V
actionGroup = new ActionGroupImpl(aZone);. ]; F1 |% _4 n2 D/ o) N6 b
schedule = new ScheduleImpl(aZone);2 S8 r4 t6 O: Z2 ?5 A1 d9 O
try {) t' A$ j7 e( y
Selector agentSel = new Selector(Agent.class, "agentStep", false);) U$ V7 w% P' L( i5 f1 t. @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 k( E; Z, \2 j+ j+ ?# L0 U" z
6 f2 z6 G: z1 F- k3 i% }: B1 }. M
actionGroup.createActionForEach$message(list, agentSel);# r; H* |& @3 U& q
actionGroup.createActionTo$message(this, swarmSel);
' h6 b7 l5 W2 `& d% E' o* F) { schedule.at$createAction(0, actionGroup);
0 U6 j& U# E" Z. A6 w schedule.at$createAction(1, actionGroup);5 F8 W4 n' y4 W: J2 Y5 y( F6 f1 o
schedule.at$createAction(2, actionGroup);
7 H/ I" h& M" H) Y9 {8 C; Y% N; t5 [2 D' C( X
} catch (Exception e) {
# d) F4 h4 e& S. g) ], X e.printStackTrace(System.err);, J- L; o, u# f) i, A
//System.out.println(e);* E/ V- m0 o! z
System.exit(1);
! ]8 p/ S! i6 X. t) t# I% P }
! F# b! ?5 v8 G: w& V4 Z- q4 l) A, u
2 T: k5 M( `; |: k, } }
|$ Z: @$ O$ f
9 q3 [+ A; U+ d/ {7 U private void swarmSetp() {
: ]2 G, y3 j8 A' `+ I }- h list.addLast(new Agent(Id));1 `2 P: q# j' J" ]& f( w+ P/ E
Id++;
. [) l" A) S9 x }
9 N+ |! i( g: f* D( ` x" _# A8 }" S( R& z% ]( ^- y5 J
public Activity activateIn(Swarm context) {
* b& L7 {" } k @& Z; g super.activateIn(context);3 F8 L" R! \2 R- s: n( k. ^
schedule.activateIn(this);2 w1 x+ z6 u# z$ d! b
return getActivity();
# M& c6 F3 F" j/ D }
/ N5 H8 ~1 p$ |0 |& V* W) k. |6 E3 W
public static void main(String[] args) {! @! P# H w6 O ?
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 c0 e! {( g( J- u" H" x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' W! K3 Y3 z0 B9 F6 V3 M7 \+ z$ ?% l swarms.buildObjects();' V" U! g- F$ a' O6 j |2 u
swarms.buildActions();
- j; l5 f& Z0 r# m2 D swarms.activateIn(null).run();% a7 k5 h: k+ y8 ]" d3 m; o( N
}
+ _" l4 T5 `' |" {6 X" y) |; B" J
* {- W* W) {+ y* W} |
|