|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 U9 o9 d" \: L, y# {+ m* z! W* q, i
: p; Z+ [- Z8 R9 m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ ^6 M* v1 G( [* J) h2 T, |5 m1 I- Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. x/ e/ M* |, O+ a
swarm.SignatureNotFoundException
1 q# L% Q* W! h at swarm.Selector.<init>(Selector.java:76)
' l+ Z; L* v' k8 c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( x- f( X. O+ a
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 K7 J5 V0 ?# H7 Z
$ c* @ r, {7 P2 X& j ]0 Q9 A9 q' L6 t8 w2 h1 W, p- b
import swarm.objectbase.SwarmImpl;
) Z0 D# r" d% ` R' `- h6 I7 E$ kimport swarm.objectbase.Swarm;6 V4 H' }# ]0 V9 u! ~
import swarm.activity.ScheduleImpl;
# W6 e7 r8 w% H) S& fimport swarm.activity.Activity;
* Y7 o' X1 z/ j dimport swarm.activity.ActionGroupImpl;
0 r% Z2 k# T/ n/ b4 Mimport swarm.collections.ListImpl;
8 @' h" g1 x- Bimport swarm.defobj.Zone; : Y; h$ A& m$ c, \: \( v) F
import swarm.Globals;
/ g9 y$ ]' u4 y* J! S. P/ |2 limport swarm.Selector;: |0 i p# K. e7 X J0 V% C
import swarm.activity.ActionGroup; $ E: L* r- c5 j6 ^
class Agent {2 _$ ], C I4 K6 ^- S5 z
char id;; M+ w& t2 p8 n: u8 i1 z. P
/ q! S; `1 K5 t
Agent(char id) {3 R* m5 O# F$ v" K' x
this.id = id;2 N6 H; J' C; W6 d: ^" j
}9 |: Z3 U% U2 O" c
$ ]6 v' L0 m7 M8 y
public void agentStep() {5 T8 c/ A, s( v* }1 W8 Q7 H; m
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 S# C* ?3 h: } z3 F }
- T0 b3 P- q' o* I' e}
* T! a: D9 X1 g, R. E) x: w1 e2 H( M# s" \
public class ActionGroupDemo extends SwarmImpl {
* U3 n, p7 b" s0 M8 Z: X ScheduleImpl schedule;
3 G# T; [$ x, ~ ActionGroupImpl actionGroup;; c! U7 s& i8 |9 m3 ~1 b2 d
ListImpl list;
/ d5 M# p, d; ~) U! c char Id = 'a';
( ]( M4 x9 K2 w* T) a; B- t- m* v" f* Y* N. }( V4 ^. n$ n) u2 A' ~
ActionGroupDemo(Zone aZone) {& ?# c3 ?$ k$ ^5 B1 ^4 ~8 `
super(aZone);
; t% N/ n p2 H1 p) W4 R6 M4 j list = new ListImpl(aZone); Q1 V. d2 L0 \
swarmSetp();
6 m* E) R5 l! B actionGroup = new ActionGroupImpl(aZone);/ r T- }* d* l
schedule = new ScheduleImpl(aZone);
6 G8 C- j L% I; w: T try {
; {1 J0 }" [. A: e: y6 B9 N4 o* t Selector agentSel = new Selector(Agent.class, "agentStep", false);0 c' Y$ S0 Q8 L6 u" H: A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, w- K1 A: y* g: Q* ?" S
* c+ Z( o: x9 s1 @: L
actionGroup.createActionForEach$message(list, agentSel);
5 _. a8 z) V8 D O6 {* P) ~5 { actionGroup.createActionTo$message(this, swarmSel);, z0 |/ s5 T9 ]: C2 G+ S9 j- ]
schedule.at$createAction(0, actionGroup);
' U) }0 @4 F/ M% t7 z% m+ O schedule.at$createAction(1, actionGroup);
: A S; ?2 B; F6 N3 m$ c+ e: w1 Q schedule.at$createAction(2, actionGroup);3 l, V; O4 K; H1 }: }: Q. k
& ~. z1 p% G; ?
} catch (Exception e) {
6 ^! c3 T8 _( l& E e.printStackTrace(System.err);' ~% O+ u+ Q, N% P) {7 d
//System.out.println(e);% g- x0 m3 ]/ k
System.exit(1);
" \, F5 ]& P& t# Z. E6 [2 _ }, `5 a8 p0 |+ \+ Y3 d4 \+ `
3 g: z/ U. v& D/ g
3 S# T* k+ s+ K, O+ @' g3 C: j }
5 W3 d# k+ a M: o; D1 o/ n- f; ?5 m+ e y$ ]
private void swarmSetp() {
9 y; G6 z2 ~; u8 h) J5 @ list.addLast(new Agent(Id));, y" V9 \+ f% j, \) S9 ?: i/ ]
Id++;
% z" @1 k5 r. H& s: F* b b f }
$ [. }& {7 }% v9 r0 l, w# Q7 K* `
1 Y7 W+ X/ w6 N& L$ s public Activity activateIn(Swarm context) {# o- t: W8 p% }2 D$ A; S) x' |
super.activateIn(context);
, b1 l" f6 f- N) j( g k- ` schedule.activateIn(this);
4 `4 Z9 m1 P. q0 k' `& k" S k return getActivity();
; T* V5 U5 I$ f4 Q }
# z4 |' ^5 R2 N! {! ~' G# [0 F$ N
) _5 g& p* Y# c3 ]* H public static void main(String[] args) {
/ I* U) F( Q: f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); P& A( w/ P4 f t" x
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 M) ]7 P1 X. a, ~( c2 [7 K; V swarms.buildObjects();# c! H/ B5 S, p8 G) A: Z
swarms.buildActions();
8 ^9 K! W8 O. L: ^ swarms.activateIn(null).run();
. @" \5 \2 i7 U6 a. M }
3 w! c; g: l8 s$ X8 e. L+ }7 p' `4 h' ] w0 t' m6 e" U
} |
|