|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( `6 z) R7 A: _" R
/ a* q7 l, k/ v- D# _; A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% q' l# k* Q6 _1 O" @' w( k8 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( E3 [3 Z8 z. Y3 Q% q3 Q
swarm.SignatureNotFoundException
9 e: w8 t" [8 P; O1 H at swarm.Selector.<init>(Selector.java:76)6 @7 t, W K7 I& m$ j# j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 x8 b7 H1 L' w4 a% N
at ActionGroupDemo.main(ActionGroupDemo.java:67) ~' v% D1 c( }: f9 x( |( A7 v
, X2 n. l2 u) x& [ O" j% \& j3 u9 I
import swarm.objectbase.SwarmImpl;
9 R# ]" q W( w' y/ l& ^import swarm.objectbase.Swarm;
* w, \ P& t' L) Himport swarm.activity.ScheduleImpl;" F9 e# h7 h. k7 _8 U+ v! F3 k
import swarm.activity.Activity;8 i" ?& E' \2 Q2 z2 v0 h+ Z& B
import swarm.activity.ActionGroupImpl;0 e/ J7 N5 U2 r9 K' F i/ i
import swarm.collections.ListImpl;6 b, ~1 o6 D; w: o3 E
import swarm.defobj.Zone;
- u, i. m: S& R/ j+ V" ]+ ^$ rimport swarm.Globals;5 T: ?6 @4 U! E6 z2 R, b
import swarm.Selector;+ U" k8 Q6 C' K& i
import swarm.activity.ActionGroup; 0 S0 P7 B5 w$ r6 S# d' E( p: {
class Agent {" \! a9 [7 d, V
char id;
9 Y, i) o4 ]# Z( j! ^& K/ Q; Y4 R3 H8 D* Q7 a
Agent(char id) {
4 v8 A- a+ L; S- K# k5 f: h this.id = id;- O' s5 O' z% x; K0 u; A
}3 E7 n3 r3 i: w! E* D( F3 g* O
( v2 P. n) q+ R4 q2 O+ [6 T
public void agentStep() {
6 C% l# q+ q0 J System.out.println(id + ":" + Globals.env.getCurrentTime());
; k( w5 S2 C2 I }
. I: I; W* x1 l% [* G}
' |; ?$ ]% _$ v Q: W0 @$ D7 f! W& t7 o; _5 ]' @: e1 h+ B
public class ActionGroupDemo extends SwarmImpl {
% i% T( H0 w8 V$ v. x; D ScheduleImpl schedule;
% v! `* X' E' d4 h4 e: W$ O* y ActionGroupImpl actionGroup;
8 D! n% ^% U) _$ k$ a% x4 p$ T( l ListImpl list;4 M! e' n' s; I0 i
char Id = 'a';
( f4 ?( U5 `" {, x1 D4 |+ e4 N \
& X' w( L7 [: o, R0 m O$ s ActionGroupDemo(Zone aZone) {
: i% \1 _. m: N" p super(aZone);$ e6 @+ ^% x) q! z
list = new ListImpl(aZone);9 h1 O# I" d8 M) `+ j% y
swarmSetp();
* r: R4 ]+ [" n& B& P" ]; ? actionGroup = new ActionGroupImpl(aZone);, e% X8 ?" q! S# a& E: M
schedule = new ScheduleImpl(aZone);* m$ g) g8 ?( q
try {; [1 k* z# p6 `& f
Selector agentSel = new Selector(Agent.class, "agentStep", false);
- d. O8 G/ k% D2 H' o% j, p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ g/ |9 u7 I; `6 q
" E% O1 l# h) k( T, Y c4 L actionGroup.createActionForEach$message(list, agentSel);/ n- U& m+ y& m( U+ v/ w9 O: W
actionGroup.createActionTo$message(this, swarmSel);
* w5 ?9 ^8 e, m. ?! |3 P schedule.at$createAction(0, actionGroup);
( D2 S! }; l* }2 ^ schedule.at$createAction(1, actionGroup);
4 c) S% Q [$ u" F2 ]4 E ?! Y schedule.at$createAction(2, actionGroup);" M. ^, a1 S G! i- I% ^* ?% W
, ^$ [ H' W7 U( v; k4 @6 Q& A } catch (Exception e) {- K9 z4 j. w* D% ~& X
e.printStackTrace(System.err);5 B+ ~8 p* T& T: t& V) F# m6 G* B
//System.out.println(e);$ @% _7 B) G7 a- K" x
System.exit(1);* O* C$ T5 a8 u7 D" Y0 z( x
}7 O5 J* ]4 }$ L
7 y1 z, _# ?: E. D
% X' o' a# m% o }% ^1 ?$ K5 P6 p0 @! B
0 S0 t* t2 m6 V% r: G; G private void swarmSetp() {
; i* @& p& M3 |1 q. O$ B, O' m5 e list.addLast(new Agent(Id));- i! G0 @/ a' T3 _( y6 |
Id++;
/ X8 R% N# o" T3 [1 V) ] }1 P1 B$ \$ X# T2 E8 _+ n
) r( U- L' H. A& ]- _% E. W: [, t
public Activity activateIn(Swarm context) {
# _2 @5 q# b: `, ] super.activateIn(context);
) U9 D/ n$ W2 c6 Y) \, h) K6 F schedule.activateIn(this);
$ ~7 U* f. x$ F return getActivity();
9 I# O7 R; o- K& G; G& v }
0 l! ] v ]7 F3 `# k
+ I9 z5 A s: e& x7 @ B) D public static void main(String[] args) {
9 @, M8 k/ g, U5 ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 v7 u" e; l7 h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" Z1 K' u% S; ]) l* z) O swarms.buildObjects();
3 E, h( y2 E- O: C& ]0 T swarms.buildActions();
' m; h7 N5 Y! ]; w a& ~ swarms.activateIn(null).run();
: R% B( P# [) Y c }* }% [+ p" }. Y. `3 R: v
. ^/ L8 e+ o9 K3 @
} |
|