|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) l# v; ^* K. C, O7 [& z: e6 M, ~5 c' R* M4 _* Y# `( G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& A/ s+ `7 M1 m. N' U. w7 w/ ]; a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! A7 o1 J4 ^2 b6 {1 N. M
swarm.SignatureNotFoundException
5 c7 `: ?, r& e% N& K; M at swarm.Selector.<init>(Selector.java:76)# \+ f5 p5 G5 e. L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 W4 T- F2 }/ t0 f. L# H at ActionGroupDemo.main(ActionGroupDemo.java:67)
" O1 z. J( p; N+ a
( ?7 l8 @6 M7 n5 l9 s9 P: x, s7 s% c
import swarm.objectbase.SwarmImpl;
3 Z* P$ c" |$ G- L7 Timport swarm.objectbase.Swarm;2 R4 \, z) X, O8 x% ^
import swarm.activity.ScheduleImpl;7 {/ ~" {$ S" r$ ^1 }% g( u
import swarm.activity.Activity;
3 j/ _4 ~ u8 V% M! V) ^/ m* |import swarm.activity.ActionGroupImpl;
4 H1 _2 o8 n3 ^9 q6 Wimport swarm.collections.ListImpl;
0 l) L' `. Y& B, ?, mimport swarm.defobj.Zone; . _4 K9 l0 Z! G. C) @; \, I; T% q
import swarm.Globals;3 M. }+ u6 U1 p7 R
import swarm.Selector;8 t: p b) h L3 K
import swarm.activity.ActionGroup; 6 L* h4 |! G2 Y* d% ]) H
class Agent {+ A% v8 N8 Y& ~- t; v
char id;9 ]5 ]/ P9 I- N6 {" k: J
. ?. }( E' @* v# j0 R
Agent(char id) {! i) t3 T: }5 t/ b0 J' J
this.id = id;( E6 v p$ b! q1 I' m
}
* n, }, \* e- g" p" d1 ]2 q; {
0 F, Z8 J' Q, _ public void agentStep() {& e: W2 k2 s2 c+ {+ T0 q- R
System.out.println(id + ":" + Globals.env.getCurrentTime());
. S" @$ F5 Y5 D% p: d }
2 I( y8 m3 T, K c& j}! u" ]: M2 w3 F9 X6 a
1 t' s; D4 ?, z& H: l# f' rpublic class ActionGroupDemo extends SwarmImpl {& U. z& ?7 I$ H6 y8 g1 \, b) [' W/ w
ScheduleImpl schedule;4 H. x/ F l$ ~/ L f% g% H
ActionGroupImpl actionGroup;
" s" h+ C2 ^0 h ListImpl list;
6 M6 [6 L Z0 _8 h char Id = 'a';; Q, G7 x! F$ p1 J( ?! K5 Z
* P+ _; ]7 i# ^3 A4 I) Y" g
ActionGroupDemo(Zone aZone) {3 P0 l8 U9 m$ u P4 k
super(aZone);/ e& M, V% D& u& @# B
list = new ListImpl(aZone);
2 \8 ~- P" G3 Y# g* \* V1 J swarmSetp();
: Q' w, I" [2 q9 |. f8 u( A actionGroup = new ActionGroupImpl(aZone); S, Z0 i0 O. L5 g! r' ^! N
schedule = new ScheduleImpl(aZone);. p6 e: o, H, q; Y$ l: V
try {
5 I2 v1 A$ Z. q0 C1 P0 w; u7 t Selector agentSel = new Selector(Agent.class, "agentStep", false);2 W. u! j5 T4 G7 G( \* e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, \$ i) L+ F: @7 B1 T 4 r) U; l+ N/ t `
actionGroup.createActionForEach$message(list, agentSel);/ I$ q; f) j( x( X/ _3 e0 I) C
actionGroup.createActionTo$message(this, swarmSel);5 Y9 n: x g# P8 \: E
schedule.at$createAction(0, actionGroup);/ }+ R n0 ^# {8 k2 f& i& O' V
schedule.at$createAction(1, actionGroup);' K8 o( a" S. ?2 C
schedule.at$createAction(2, actionGroup);+ ]$ M; Y7 n; F; _" ?- U. V- v
( e a( T& i* |% n) [" L
} catch (Exception e) {( B) O, |/ \5 h
e.printStackTrace(System.err);4 F* a) s2 x Y
//System.out.println(e);7 J# s: M y/ O
System.exit(1);
- M& U# a8 W+ T( I9 r; S" q) v }
3 w' s- y$ V8 M( K( d- n. T; j. Y" s: q- E2 ^/ O
* f& b& P9 D) R* U e }
" G3 b4 {! h! \7 S6 @! F2 W8 G/ Y! K
private void swarmSetp() {
6 K) p: Y2 S- q7 X6 s$ s list.addLast(new Agent(Id));
& Q: M4 H! c3 S! h" F6 r- t8 r/ I Id++;( z0 u/ ^. M ?; x2 a3 f+ p& x [
} v9 a3 S+ @2 Q! G9 ?' d
/ H/ g+ H8 E) D5 H) ~* k6 {; _8 c; j
public Activity activateIn(Swarm context) {
?' z# R8 M: E# w" O7 E) e super.activateIn(context);; r w* C) n- N s) p7 a! A
schedule.activateIn(this);
; O& [7 b5 n# z z( \' z$ | return getActivity();
+ p2 Y4 |: O5 I' {3 F6 K }7 o8 X5 k# B! `$ }$ Z% g. X
$ }2 `; v, t: @9 N0 `* J public static void main(String[] args) {: y8 |& ^: h+ d& _! m! s5 H6 A; F& o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 k, j3 f7 u: ^! V1 a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( i. v# I- p- O7 m swarms.buildObjects();' N; R1 o3 H) \% f
swarms.buildActions();1 j4 S" l, z/ s
swarms.activateIn(null).run();
4 P. x+ S; l n2 J! L2 W; ^7 j }2 e* [0 v! n! F/ K1 z, G: C
3 ~0 X+ Z+ m2 V/ @" D3 j F% g5 a} |
|