|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. o4 R: n$ ^) e2 y; f( F$ O
. D( g. L2 C. m* C5 F: K8 @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& g) g* y* J4 q* k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 } `3 [; j; u/ `$ @+ Z7 o7 b1 k0 B
swarm.SignatureNotFoundException
& _9 l+ x% q0 ^2 n0 ^8 j at swarm.Selector.<init>(Selector.java:76)
( |! L& ?; o: K; c, f5 O; L at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" B, `* M7 b0 C/ o- L9 [( M3 g at ActionGroupDemo.main(ActionGroupDemo.java:67)
" u/ i+ F2 t3 i5 a5 K" K* ` D; J8 F1 B# W( o9 z
4 j, s. b7 z% K0 T/ j; i
import swarm.objectbase.SwarmImpl;
+ v {% L( \7 t8 g f4 k7 r) K) jimport swarm.objectbase.Swarm;
: |& p+ U; |) p/ E1 Himport swarm.activity.ScheduleImpl;
% O; I7 K2 H+ Q$ Cimport swarm.activity.Activity;
Y- U% N3 d( m* w, Fimport swarm.activity.ActionGroupImpl;* t a0 K6 N, c* z
import swarm.collections.ListImpl;5 s D5 Y) f1 v
import swarm.defobj.Zone; & w" j$ w1 p. a: s g9 P
import swarm.Globals;; X: N3 j ~' S0 z$ I' V
import swarm.Selector;4 @% _, o: x, l
import swarm.activity.ActionGroup;
/ f7 Q, ]8 T9 E/ P# y; M% ?class Agent {7 e# h5 z- a# d V8 J
char id;
' R3 w6 k* T5 \- j" {
# D& Q' a) E& Q& O- a1 N2 C Agent(char id) {1 \; G& C3 E# S4 {) @- p0 `: N
this.id = id;' k- c; c8 @1 ]7 I0 T* C6 }
}5 N' E; E% A& A$ _- V m# s
P5 t2 C J) R+ `0 M4 g/ b# K; c public void agentStep() {
2 p H+ e8 J5 T& m, U% o/ S System.out.println(id + ":" + Globals.env.getCurrentTime());2 C9 E8 T3 {' c* i: s: n% D
}
/ L" Y! c+ N# j' U2 O; ~! w}; I# X3 r# A% v. \7 S
: ~& N: y* z3 Z" g e% S) I
public class ActionGroupDemo extends SwarmImpl {7 Q7 [+ t" A. n3 e5 @
ScheduleImpl schedule;
2 l" |1 N6 w# m) a: ] s4 A ActionGroupImpl actionGroup;* p/ c* ?9 n4 B$ _; d, g
ListImpl list;
2 d4 K% c" O. p9 @* z* J( h5 s char Id = 'a';
5 B" o3 u, K5 m& p9 _. T& y. `, B, [% t7 z
ActionGroupDemo(Zone aZone) {( v+ @7 Q3 }5 w f1 c
super(aZone);
+ K# ^ O9 A' K. W/ C. ? list = new ListImpl(aZone);
- p, s& l8 m0 p5 {% X swarmSetp();
8 ^- q% Z8 ~0 L/ k, s, P actionGroup = new ActionGroupImpl(aZone);
+ ~8 F/ n8 A( w! O6 k' h schedule = new ScheduleImpl(aZone);9 f" B7 V( C W; F
try {
7 |- _& S0 P- w1 u0 v- B) R" o Selector agentSel = new Selector(Agent.class, "agentStep", false);6 y g- z( G. }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, ^ s/ ^# ^' e5 G
( z4 `" f, M3 u' e, S
actionGroup.createActionForEach$message(list, agentSel);
6 t) ]/ W& H; c6 w2 d5 ], \, B# B- b actionGroup.createActionTo$message(this, swarmSel);1 M5 D! q( K; V2 m( T
schedule.at$createAction(0, actionGroup);
7 s" ?. N0 y3 C schedule.at$createAction(1, actionGroup);- W5 r8 [' _8 }7 ?+ P+ M
schedule.at$createAction(2, actionGroup);/ O& n- _. R9 K5 C2 a
, v9 X6 F, B, F
} catch (Exception e) {
) K1 D+ M. j0 I6 s9 ? e.printStackTrace(System.err); _- ~& u/ e0 j& F
//System.out.println(e);
; X, p! x% t/ q2 |5 f% b4 s System.exit(1);
/ E! g( K" n9 X8 Q" ^1 H }
3 l) s$ n$ R/ X) L. G2 n
4 _3 w; Z# z9 m+ m# l
1 A' Z1 y3 l, \, i; @ }/ a3 J# j# {) ~! H+ z0 h8 l
. m0 ^+ h+ p7 N, d private void swarmSetp() {
2 J- a# [5 f! W/ e list.addLast(new Agent(Id));2 u2 {1 c. t. A O' m
Id++;- J0 y1 _+ ^* t4 f6 ^" a
}6 g6 F r1 _) B- M' I# h
5 J2 k( \6 {. t# o0 Z) q$ @ public Activity activateIn(Swarm context) {3 A; V- `0 p! J8 _' N% S6 R0 |6 y4 K
super.activateIn(context);
4 {1 p3 E2 r+ F3 e$ R schedule.activateIn(this);7 C9 `' B( ]& [3 ~& ^4 m6 t5 _
return getActivity();2 N& ~2 w3 R. D5 F% j
}
( v' h/ o7 D5 y" p' o- g% O8 A
9 ~/ b' G P F: S& n public static void main(String[] args) {/ d z n8 I" Q. s. X U) ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; q6 X: b! w2 X+ p% c; j
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 }) w2 D7 ^1 Q2 K0 [* U8 H l; v swarms.buildObjects();+ j+ L0 @9 \8 A/ i G8 V
swarms.buildActions();
7 V4 J5 a a, h2 r9 q swarms.activateIn(null).run();
9 E/ O9 Y, K1 ~ }
# ^ u* `: p1 ^9 _/ x( M) {( K
- |! M* |- G" ~. u: o. O} |
|