|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 c: d! m+ G) ]# F6 |% ~0 e
' Q4 d2 `. ~) t4 }; B# ]( ~: e8 |5 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' F6 v) I8 C2 e: d1 G7 Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; o1 ~/ T( f; P" Z& Y( t! H7 r: u
swarm.SignatureNotFoundException q2 U: j3 L3 I% c J5 Q
at swarm.Selector.<init>(Selector.java:76)8 m9 N0 O4 z/ [6 ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" H* W/ s, [5 F. q9 v; m at ActionGroupDemo.main(ActionGroupDemo.java:67)% G- ^* B0 o: _& L7 k" X5 Y( w! I, [
$ s" d5 k0 F! C" q" P* H( |8 o& X
: _* V3 [2 f/ o3 J
import swarm.objectbase.SwarmImpl;
* w! q9 \8 W7 @8 H4 t( j# c& l( Bimport swarm.objectbase.Swarm;
1 u- f% }# ?8 ?0 I+ {2 Iimport swarm.activity.ScheduleImpl;$ y- q9 C d! {; P3 f9 g# |9 K
import swarm.activity.Activity;/ u9 |9 D+ e7 ^- C
import swarm.activity.ActionGroupImpl;, {0 ~" {) Y( ]" Y1 l2 Y" G7 K
import swarm.collections.ListImpl;
4 H4 I0 n; _9 E; jimport swarm.defobj.Zone;
2 I% ~/ Q0 @3 y- }import swarm.Globals;, m/ G/ e- u, [9 W2 O8 ~
import swarm.Selector;
, ~4 S; @( w; r0 dimport swarm.activity.ActionGroup; 0 v9 D( Z, p" v
class Agent {0 e+ _" n3 x7 T9 m; t9 h3 N
char id;
& N0 G5 h7 r2 \- a0 k. O
9 X& G# X4 t" _; E# T& e# P' b4 H/ B Agent(char id) {
7 u- I& e' M" W+ v1 ~ this.id = id;
1 J. V; g% B9 b( ~( c! i' d }
. |' D& P( V& J$ N g0 |* [+ m/ c% a# D- |4 _. q* K( k+ j
public void agentStep() {- P! i1 n; q7 D8 \9 h
System.out.println(id + ":" + Globals.env.getCurrentTime());
! [" z' K: L6 N/ w1 G: s: r& N0 S }
' V$ H9 v' a" s. g% o" Y}
/ [$ e0 j- ]/ E- J
2 r4 L! }& ]9 j9 A9 j; npublic class ActionGroupDemo extends SwarmImpl {3 b+ ^3 Q% Z7 r- l) Z
ScheduleImpl schedule;
# k! u' d }, y2 ^( S z; V ActionGroupImpl actionGroup;
# r) C6 r& U- G+ W. `' s* u ListImpl list;. ~" O i: N8 z! ]" f4 L+ L2 J, n
char Id = 'a';
2 M5 m5 w7 Y( t& x5 d1 ?% i# a& I- c# i1 G; K& {
ActionGroupDemo(Zone aZone) {9 {% G+ [' G+ G: C) W, P. L+ t7 b
super(aZone);
2 W0 e5 b; \1 \/ z' ` list = new ListImpl(aZone);9 M1 u% c" k# k$ p
swarmSetp();
% k1 f; X' T" m% ]- u actionGroup = new ActionGroupImpl(aZone);
# g e, U% w( w schedule = new ScheduleImpl(aZone);. ~+ \# n8 a( S% [( q) l
try {& q- m, G* m. N0 N w6 d* C9 u
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ V. R/ f: a) m N; g5 m Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
r# t! }7 u9 T5 s/ E, {& } # O6 I. R3 J Y% g1 {3 U
actionGroup.createActionForEach$message(list, agentSel);
0 O' p! C N1 c5 f( m' u' W actionGroup.createActionTo$message(this, swarmSel);
1 C _. j3 E4 h: G0 m" \8 M4 W schedule.at$createAction(0, actionGroup);
& q3 S, g# U6 y1 L( Y9 Y7 } schedule.at$createAction(1, actionGroup);: c- E4 H5 k# v p3 j
schedule.at$createAction(2, actionGroup);
7 b9 D9 h3 Y4 }' v; {# f# @$ T9 C' t- ^. l; T! ^1 W; ~8 K1 X
} catch (Exception e) {" e: T1 O' R% J) R& O3 S; e9 I+ g
e.printStackTrace(System.err);, Y8 @6 V! B& u8 ?% X& D
//System.out.println(e);0 {: h; J4 u Z- W+ \* _
System.exit(1);! u4 T2 X' F/ x9 I m! m2 W
}
* m9 s0 W) V, I6 D- M6 m: _+ w
: e$ b( y# w4 |
' R, m) a* p$ j( \' {. c }
; U. A, _/ N# q' n+ g. |2 r( G6 u6 W0 O6 x
private void swarmSetp() {4 a- `2 r8 B8 r) `5 u6 G! J- ]
list.addLast(new Agent(Id));$ S8 v$ Z" N n U0 r6 N
Id++;
3 \ ^' V. @2 @& { }( A. X% p# E- A% Y
2 e: ]" K5 F/ J* B0 }( t
public Activity activateIn(Swarm context) {( F& W j) ~* b/ {3 D7 P3 Z. e( S
super.activateIn(context);
5 r9 t& H$ I3 W3 R Q& s+ W schedule.activateIn(this);
/ p" _$ x* x8 X* f% e$ Y! o6 _4 p return getActivity();5 v- M; z6 g$ c9 d
}
! u8 v/ x1 z. C9 o
( X) F0 H! ^$ c: h& E public static void main(String[] args) {
1 I. ?$ ]- I3 L& k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( \' G; G; A0 |4 |% m3 }3 A- T# Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 ~5 `3 o7 R' d t
swarms.buildObjects();- K5 P8 R6 X( Z+ V
swarms.buildActions();2 N. _3 }! d8 K1 C
swarms.activateIn(null).run();
$ Y2 w' Z# A; U, l2 q" @8 u7 c }9 [; G4 C' H1 k4 }, t
5 x1 A5 Q* f: D! n5 V* X- `
} |
|