|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- b6 Q5 v9 x( T) e; }5 S3 Y4 v8 m( L" O- w; K9 w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ V* P- A a3 y" [7 s% P. q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& s' w x6 d p2 v; \/ M1 a
swarm.SignatureNotFoundException1 F* X! F3 ]- a
at swarm.Selector.<init>(Selector.java:76)
6 M2 @; s/ p" r. d. ?/ T1 T* d8 c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# _$ { |1 @& J/ ]' C
at ActionGroupDemo.main(ActionGroupDemo.java:67)8 L8 p. ^% T6 }8 i% S1 K
* h8 o4 E$ o E& r4 c. v0 e
x: y. F0 [. J6 d8 O6 Wimport swarm.objectbase.SwarmImpl;2 V% c* E; G& v2 _7 r X! |% f
import swarm.objectbase.Swarm;. Z" j+ I4 H0 c4 F, L* D& C% p
import swarm.activity.ScheduleImpl;# c/ f! v$ S" T' M( }5 F5 h
import swarm.activity.Activity;
6 V9 d$ p) s2 {import swarm.activity.ActionGroupImpl;$ o- n* U- m1 S
import swarm.collections.ListImpl;
8 v% P/ z% O' iimport swarm.defobj.Zone;
4 M- p$ |2 P/ h5 w3 k9 H9 Jimport swarm.Globals;- W! R2 q' z' Q
import swarm.Selector;3 h7 G. x, t/ v
import swarm.activity.ActionGroup; 9 P9 W, G; z T n/ q
class Agent {
) F. C9 i9 F4 [& n+ A' q* J! q char id;- G. v! _7 z! F
) u& | N1 y$ j5 a# Z0 p7 w
Agent(char id) {
1 ]/ Z1 p9 o5 H this.id = id;
" b# a: }, Y! r/ E0 p }' O0 S, J9 V; B1 \( q- D1 }
: h, v% |( \+ P- g; ~
public void agentStep() {; F& r! p$ S8 i- `; ]
System.out.println(id + ":" + Globals.env.getCurrentTime());
) A( Z! m' C6 s+ c$ C3 U }
% d8 t, I% M1 R, z}4 W! d9 n$ u/ ~* O1 f3 B
( m/ [8 j6 J0 x2 E) }2 \, ?7 x$ n
public class ActionGroupDemo extends SwarmImpl {8 `) k: n& K2 I! u8 A9 A
ScheduleImpl schedule;
' X" B( H& H# x9 Z3 D' B& ^) ? ActionGroupImpl actionGroup;
% y+ r: G$ L+ \8 J) H) R: x ListImpl list;+ _& q0 f0 _: ]/ D! k2 P, I
char Id = 'a';
4 N0 X: l4 `8 m+ K0 E% e, Y
9 ?1 `- z1 p4 |) W( ` ActionGroupDemo(Zone aZone) {
; D8 X, h% V# y super(aZone);
5 o* j# U1 U$ v; y( F( {+ ~ list = new ListImpl(aZone);
9 n/ S( n4 `, c8 _! P7 } swarmSetp();
. f9 w* m" \. s# n7 y& f7 U actionGroup = new ActionGroupImpl(aZone);( W! R$ `0 a- O1 B, j
schedule = new ScheduleImpl(aZone);+ R# B- ?; T0 W0 n5 s; ]1 [
try {3 I0 I1 f1 [0 }6 F5 Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 o# L. c7 f2 m* w Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% i- t: l6 B/ D
* |2 y# a, R1 T" n actionGroup.createActionForEach$message(list, agentSel);% ^8 B+ E, r% s0 I# |
actionGroup.createActionTo$message(this, swarmSel);3 U. e% e' r) U' |# [, `% c+ Y
schedule.at$createAction(0, actionGroup);
) w6 s8 E8 S0 k, I C1 p schedule.at$createAction(1, actionGroup);, b. o8 a# g2 C6 K' p
schedule.at$createAction(2, actionGroup);3 }, k* K/ E& u: p/ o; x& S
4 z( w- n( C$ Z- W8 K8 f } catch (Exception e) {# N: Q9 c# E2 N/ P. ?* r. P b7 U
e.printStackTrace(System.err);
7 o, O, A9 b0 ^/ i: m8 o% G //System.out.println(e);* C: a. e& }' u) T
System.exit(1);
; Y t4 ~2 Z2 a+ q9 O& ?3 o }6 r( p( ]) u5 p D0 f
7 F) u" f: x! Y
- U2 b6 Y9 n8 k3 D1 J" ^ }1 `% F& |# D% z9 l5 ]
( c& {6 C! c9 N+ {+ [/ s) | private void swarmSetp() {1 `0 O4 ?8 T( k1 S" r# F
list.addLast(new Agent(Id));
M/ ?$ q% C, P' l) b2 L& l. a, ~8 i Id++;
+ o" N; [1 L2 U; w }& k# B+ B1 i' r! v$ w
2 _0 Y4 N/ m! H7 r5 a public Activity activateIn(Swarm context) {8 b2 b, G* `2 h
super.activateIn(context);! V. |. z z' y. K
schedule.activateIn(this);
& n6 f5 ^0 q% I# X( \ return getActivity();! l$ {' m0 ^! r
}0 {* A: B9 ^* J3 m
% P/ C! l6 I; K! ~
public static void main(String[] args) {' ]6 F% _8 o( J0 \* w" J
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 V! R. T0 \2 @ y" f Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 V7 J7 i1 b% h5 ?% x swarms.buildObjects();% ]# u* p; n$ r1 `- E( X% n
swarms.buildActions();
' Q4 t2 G+ c; f+ ^' x {* x/ P swarms.activateIn(null).run();- n% o; h0 r$ M! J8 v
}
0 b' G( E% ?4 C1 d$ r! v" y0 k1 c& t* T {# u6 r7 `3 G' r
} |
|