|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* e' w6 w6 M# f# P* L8 x6 ?3 L5 c0 @5 o# y' u- k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 s3 x$ `; f$ s3 } k0 g7 J) c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- d7 M6 L# O1 Q% c) Iswarm.SignatureNotFoundException# ]4 e9 Q; J7 F# [/ F& K
at swarm.Selector.<init>(Selector.java:76)
+ W, j4 N% O$ X+ b/ q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 C7 b, P H) h. o at ActionGroupDemo.main(ActionGroupDemo.java:67)2 s' ?8 Y( F! q
8 ^) Y! l1 H4 h0 B9 W
4 ~$ V. t! s! e
import swarm.objectbase.SwarmImpl;, k p# N& D0 u( m, r
import swarm.objectbase.Swarm;
: ]; Y U1 m8 H, m7 w& |9 himport swarm.activity.ScheduleImpl;8 k b1 h' W& v- |1 }
import swarm.activity.Activity;
* B* ?4 E m% B5 u, c1 ]import swarm.activity.ActionGroupImpl;) R7 v$ H2 a \# z- Y7 k% _
import swarm.collections.ListImpl;
) e" i* Q5 \3 R/ F1 Qimport swarm.defobj.Zone;
# _7 z" z* a- S8 M+ X2 [( z7 himport swarm.Globals; _6 a; g. j& Z! v- e5 q8 a
import swarm.Selector;6 d6 ] B' |$ S8 W4 E" x
import swarm.activity.ActionGroup;
6 J P1 U3 u2 q* F' ~" C% e: yclass Agent {
. {/ D. l, I5 ?% u- Q9 H3 K: A" z char id;
+ W" j- x3 y8 @. W }0 f4 b _
4 d% T$ g4 C* z0 K- I Agent(char id) {
0 `5 ]3 a. {# Z1 q8 q0 x& P8 y this.id = id;5 d9 m- g7 f2 N
}6 Q' G! b" C+ O2 R* I6 }
, \- o- O# u" m
public void agentStep() {
5 q6 b0 N6 J5 M* P5 T8 _ System.out.println(id + ":" + Globals.env.getCurrentTime());
" h$ V( q* _8 E" C" k }
" `+ _8 K" V; N7 q. N) J}( W# w+ d8 n$ ]; y F% Q
$ Y0 q5 g; U$ A
public class ActionGroupDemo extends SwarmImpl {
; V! g2 E. c0 w j ScheduleImpl schedule;
' q( Q# }& F2 ` ActionGroupImpl actionGroup;# F( e5 j6 R: P/ G2 C0 d
ListImpl list;
+ l0 u( x3 S& ]2 I8 b char Id = 'a';9 J% Z, o0 l% D1 b6 \
) {& i! ~- X- x0 j( ]# y. ~& t ActionGroupDemo(Zone aZone) {
1 l8 z" g( T+ R' I3 h0 e0 q super(aZone);
8 V$ J8 }$ U6 V7 E# t. { Q list = new ListImpl(aZone);4 ?$ \6 ^- N) y1 R. r
swarmSetp();
3 @$ V; d0 W! {% M6 F( M actionGroup = new ActionGroupImpl(aZone);
- A2 h/ X, D; S, H2 G; f( t e schedule = new ScheduleImpl(aZone);0 g; `/ U( E) U( H8 U
try {
/ r2 \' @5 J* h' d7 |1 S8 N Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 S# }' Z6 n% U& b2 C" A1 @ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) C4 p! S ~2 o' X; K7 D5 _
8 M$ Z {0 c4 K- p' W! `% W8 @ actionGroup.createActionForEach$message(list, agentSel);
6 B7 v: W) m- {2 w actionGroup.createActionTo$message(this, swarmSel);" X4 h9 G" Z) x8 _# M
schedule.at$createAction(0, actionGroup);
, |: T( Y8 |8 G8 }' r# H6 `+ W schedule.at$createAction(1, actionGroup);7 I- F' G! L, L6 f
schedule.at$createAction(2, actionGroup);
" ]# j3 G+ V5 ~9 m
8 z8 J# J% u" j$ C! H } catch (Exception e) {. g6 R9 ^- \$ ^8 v4 r" u, l% e
e.printStackTrace(System.err);7 X5 H; W z1 W
//System.out.println(e);: \' C( h' e+ Z5 M5 Y1 A4 f; h' h
System.exit(1);) W- B% m" b# K! q2 ]: r
}
/ O' Y' s1 x6 P2 a1 {2 j9 q/ g4 L& }( G( U& @1 H
# @; p1 B" {# Q0 q
}
% Y+ _( w/ s) t( p* A6 T# t3 _; T9 Y) @% }( U! y. }4 @
private void swarmSetp() {
0 ^: E) W5 j* }5 N p: U list.addLast(new Agent(Id));
7 C4 N: t3 c( |* s+ t3 n% o- _+ i Id++;
u/ U# F4 @3 `: l* P# ~ }; d9 Q: ^# k7 r6 m+ b$ y
/ G, y+ i0 ~( x. \4 f3 e6 R9 v5 ^
public Activity activateIn(Swarm context) {
- u! I1 L. S- k: J. n8 z super.activateIn(context);7 x8 t7 p) o; J p$ `' F7 z. j
schedule.activateIn(this);
7 E: E* C ]* v* y b return getActivity();
w2 s9 O' [6 Y, j) ~# q+ e }
4 ~: V) U q9 g2 Q3 `: r* v4 T
8 X5 |. d5 M$ C8 B7 j9 H$ z% k public static void main(String[] args) {1 _! i/ z+ {: I5 ~2 k- X- v: q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 P( ]) H+ z# x6 t% u$ A
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 S0 i P: c9 N5 r" G/ V swarms.buildObjects();5 ?1 M: `# N, j( c* K
swarms.buildActions();0 O- C& {: [. U
swarms.activateIn(null).run();
* I( S! d" n& A; ^4 m$ W }
4 y4 O% Y2 x8 [ W5 X) C9 Q0 ], M" Q0 A
} |
|