|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% O6 V- T% u+ {7 ^7 K
4 p4 G) }3 s( Q% m# ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% z* v8 T" \6 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 {; t8 B# I# H$ u; m6 k' B
swarm.SignatureNotFoundException
) r) @+ s0 ?: E+ Z6 x& `6 A at swarm.Selector.<init>(Selector.java:76)! j6 X" k. J6 p8 n& X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# Y( @6 h H) i- P! E( \" U
at ActionGroupDemo.main(ActionGroupDemo.java:67)
) M, D& e4 Z/ {. s- k2 | j5 n/ Q. }; O: l; z
7 ~" d3 z2 n7 G6 j, D8 ~import swarm.objectbase.SwarmImpl;. Q; k" p3 J5 ]" q# S
import swarm.objectbase.Swarm;
3 r0 u' A* D) q7 ^import swarm.activity.ScheduleImpl;5 ^& e h8 i: U" k+ j' G B
import swarm.activity.Activity;
5 Y; B, w+ u9 b9 m6 f" B) Kimport swarm.activity.ActionGroupImpl;
$ D( R( b( }8 r! k1 }. Q; oimport swarm.collections.ListImpl;
5 m r9 s# Z' P, C0 ]# F) @# X/ mimport swarm.defobj.Zone;
, R; k6 n( z% Qimport swarm.Globals;
8 g# N( N4 i% k$ ^7 ?% d& @import swarm.Selector;1 a- J; p! t) C* u$ \! q/ b
import swarm.activity.ActionGroup; 3 h H+ j% s" _5 W
class Agent {! T* @: F! N, Z$ O6 H0 k) A
char id;% j1 [9 Z3 B* |$ i$ O$ A# n
4 w4 S' e2 \( L& O Agent(char id) {, U4 `0 |) R! J8 W/ B- b( z
this.id = id;
; k/ P& [: Q$ E8 V; {- d2 } }
/ F$ S8 _% x/ Q5 P/ k& E3 I
" O$ C: |- h0 R) m0 y+ Z( Y public void agentStep() {
3 B6 b3 t- {/ g" ^/ c System.out.println(id + ":" + Globals.env.getCurrentTime());( s$ i/ [& w @) `7 ?9 N
}
6 g; C( O* N! X" \, p8 }}* V2 [6 m, j- L G
- N, ` _- k# j G1 ?* F+ D2 ^public class ActionGroupDemo extends SwarmImpl {
5 L: a( t% ?1 U. y$ B ScheduleImpl schedule;7 w Q9 P" ?8 |) Q# [+ r% g
ActionGroupImpl actionGroup; I+ P+ F) Y% y
ListImpl list;) ~3 ^* {0 p( p# v6 O3 P# ?! G
char Id = 'a';
" e0 Y2 @7 o0 o/ b. p4 V
7 Z* I! U9 y. }9 j! k( f8 Z ActionGroupDemo(Zone aZone) {$ u% X5 C* @! T9 {
super(aZone);! s& h( y: R: \% \9 }
list = new ListImpl(aZone); Q8 [# F0 @4 y6 W9 l
swarmSetp();
6 A! J# F) b( V* T" P actionGroup = new ActionGroupImpl(aZone);
( N" k4 n- I+ r" ]5 u schedule = new ScheduleImpl(aZone);
; u" j! {( `' ~/ K% |9 A7 A2 _ try {
/ U) ~1 G, d7 E. a% U& ~4 t+ K Selector agentSel = new Selector(Agent.class, "agentStep", false);
! \8 l4 L" }/ s3 ^. T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ V; U& |* G& s9 Q) p/ K
" U" v6 C$ {$ m1 E# i actionGroup.createActionForEach$message(list, agentSel);
/ D5 W6 h$ h9 r( w0 ~7 p8 ` actionGroup.createActionTo$message(this, swarmSel);
! t; L2 ~7 I! B1 s. i7 H4 y schedule.at$createAction(0, actionGroup);
; G0 t# p p; a: o3 F schedule.at$createAction(1, actionGroup);/ t, d! ~% N& P2 |1 a! P; z
schedule.at$createAction(2, actionGroup);
( g3 l+ J$ k( M7 ]
$ J8 t, U2 a% h. ] } catch (Exception e) {9 }; p% A6 N& x5 d$ o+ n9 M
e.printStackTrace(System.err);
. i# b8 k1 V: h& [. f; p4 E //System.out.println(e);5 C2 A5 v- U4 `. \. e4 X7 T) I1 w
System.exit(1);" x1 N4 x" f9 I2 T0 I* J" f5 p( k
}
% n& C- ]2 y5 S- e1 g& i' ?& P5 U) I3 E. t4 K
5 X' I( {4 M/ y8 E" K }6 G7 c; e7 r9 `5 z/ I' [
4 L+ ?+ F* |3 Y. Y0 V# C% I private void swarmSetp() {
# M; S, \- d- Q) s list.addLast(new Agent(Id));
& `2 U* Y4 Y# h$ n1 g Id++;
! G; Y7 w9 b+ q7 H }
; g( R o$ L6 _- }& L+ J3 M# ]" P# m5 x) ], Q; ?: g, j# a
public Activity activateIn(Swarm context) {
/ Z0 w" g" U( W! J, E. F, b# L super.activateIn(context);
0 p8 I6 m% M( m% \/ F schedule.activateIn(this);2 V' y4 l1 V l7 P. ~
return getActivity();% ]% ^1 B8 J- D. }9 F! A) i0 H
}
! K4 H) F# J/ k' l) `2 o% y
, k6 W2 m; D6 ?% P- @ public static void main(String[] args) {
P5 ~3 X1 I S4 u, A6 u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 U. J% Z# ?, r0 I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 p& n" Q& Z4 N2 \0 I: y5 P
swarms.buildObjects();
6 Z- [% j/ W3 \. Z7 c- F swarms.buildActions();
5 M+ t5 N$ ]: h3 `& J% r/ L6 c swarms.activateIn(null).run();1 f" S7 s, s, h4 w
}
8 `- H6 `+ }5 j+ N
+ y; }, T3 O) U/ ^7 y} |
|