|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( x# j0 Q# H1 X5 j' O' G5 }4 x8 y% u2 r' _* v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% ]! o. J* ~0 _5 b! ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ B2 }% X/ {8 B( U8 Z% }swarm.SignatureNotFoundException7 {' `! v( _) w& c, k
at swarm.Selector.<init>(Selector.java:76)
5 `* ^/ c0 O6 [ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) e; ]# O* [0 y' ^+ R at ActionGroupDemo.main(ActionGroupDemo.java:67)% L# `: W) n. G8 e3 W0 u, E. k0 f
0 [ D: w7 h$ E3 f- {) y7 ~; z( a4 v6 |5 N9 M7 J: S4 Y* d7 W6 A
import swarm.objectbase.SwarmImpl;
* \" j' J+ I( f$ I' d9 V4 G( qimport swarm.objectbase.Swarm;8 W& @3 } Y( X
import swarm.activity.ScheduleImpl;0 G9 r! J; K$ i& ]. ^# W6 g
import swarm.activity.Activity;
8 b6 ~* i# Y8 E3 q4 B! q( qimport swarm.activity.ActionGroupImpl;
# {9 D1 |- w% L: D8 a2 Cimport swarm.collections.ListImpl;4 G% s9 J1 }; Q
import swarm.defobj.Zone; : C4 G& {6 `0 W: ~. R
import swarm.Globals;; P1 i* y) o8 b+ J1 ]
import swarm.Selector;
2 A" g2 q8 A6 T! Kimport swarm.activity.ActionGroup;
. u5 Y% u! ^! ?1 J; ]) X- Kclass Agent {$ o4 H" [- ?4 G. S: R: p
char id;8 c. e' ?4 m. c: v
$ ^3 }0 K# d! S6 ]: R. e3 ~2 \
Agent(char id) {+ H9 r, y/ |: c( {4 `
this.id = id;* g0 |# U/ Y8 @$ o8 V2 v* ^# T8 B
}
' j' f% q6 S0 p2 S/ g* [9 g9 E# i) G4 ]1 f0 Q, i
public void agentStep() {- }1 U* g$ m9 m o
System.out.println(id + ":" + Globals.env.getCurrentTime());& b' Y/ |3 k" A$ J- X
}: d' I7 g5 m, y8 [' V; L; w- Z5 y: ]
}
/ F5 f" x; E6 \: l. O9 \( ?5 c- m, U. O
public class ActionGroupDemo extends SwarmImpl {
; X* d$ @5 @- t4 ` ScheduleImpl schedule;
g, q% `6 Y9 ~" y4 E ActionGroupImpl actionGroup;
1 f1 |) T0 Q* O7 n7 M* \ ListImpl list;
" z% _: }! `, F! ~5 M; N char Id = 'a';
" e: H; r( l) H; Q' U
G- q' i( i7 X# H: I ActionGroupDemo(Zone aZone) {8 o+ r! P+ o- ], b* \/ p# l% E9 i
super(aZone);' ?+ c2 j" j& B
list = new ListImpl(aZone);) h8 i9 ~0 x; J5 L8 H K/ R
swarmSetp();( t9 @) R6 p8 ^ D
actionGroup = new ActionGroupImpl(aZone);
0 P. U7 R, t2 S. M2 t/ j schedule = new ScheduleImpl(aZone);# t) L% f! A+ m6 B/ H
try {4 o( y+ T/ i1 k" |2 j9 \- X
Selector agentSel = new Selector(Agent.class, "agentStep", false);
- H9 n, k6 Z4 t" [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 }, H7 j& Q4 e5 B/ r; l( [
6 f& E. M) z9 T! m! j actionGroup.createActionForEach$message(list, agentSel);
' P6 `3 i) Z. S& q! V4 f) N! a actionGroup.createActionTo$message(this, swarmSel);. I/ l) d$ Z! D. E$ v3 i8 B( a
schedule.at$createAction(0, actionGroup);: u2 v9 d, J7 m m1 E1 q
schedule.at$createAction(1, actionGroup);
, x- m, Z, Y6 L schedule.at$createAction(2, actionGroup);
* u, e4 ^8 H5 g- A
$ p: s* L5 q8 X8 ^ } catch (Exception e) {
0 M6 ~! {. g/ L5 [. _0 ` e.printStackTrace(System.err);
% p8 }" x. y: S n# G //System.out.println(e);
4 N% p+ p/ }3 ? System.exit(1);
# k* _' g8 l! L' W. {0 Y8 R1 y }
, m. O, g" K" |; I. f9 t; T6 o" Y( L5 O/ W# X7 Q
/ l3 n( v. _: E8 {7 K5 A/ Y, w }
& }' K- v! i6 {5 ^- e0 u- ?& V; z* a6 R; ]( M Q. j
private void swarmSetp() {# K- j+ ]( ^; g* v" q; `0 O# ]1 ~
list.addLast(new Agent(Id));
# y- e8 @% ^9 a0 V: @ Id++;
% a( _& M) n' W4 S# [) e4 @ }
* L$ I4 f* p# l: \, Y3 w
) |, P( B' f3 |5 d3 B1 X public Activity activateIn(Swarm context) {
3 `0 V$ h6 g& D( E) g- u A, X super.activateIn(context);4 l& Q+ c; ~; Q& e, `) b7 e
schedule.activateIn(this);
$ T! R- j3 Q) @* r$ e" Z) ^: S return getActivity();- M0 A& P4 @$ p3 m
}! O! c5 A- I) w* y1 a0 o9 V
& u& X- z2 K7 f* M public static void main(String[] args) {# E. C, s1 s2 P" z9 X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& P Z, Q& P8 z. b( \2 W+ g. {3 ~ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' c9 i; r( u5 ?/ Y9 t6 g" Z# m swarms.buildObjects();
- W' v- U. P/ H c4 t$ D swarms.buildActions();) E5 X5 b' o' c, W
swarms.activateIn(null).run();
- v' r# }; G6 Z3 v+ Y# g: r9 X }; @6 o. ^& P1 X$ n/ P& S! {+ r
, e' x8 l5 z$ T
} |
|