|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 i* K/ `3 p4 G3 d5 _# I) l/ m; _9 p: `7 o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 o# Q' X* M- m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 y" ]; ~3 P( Pswarm.SignatureNotFoundException$ k/ }3 `1 E, q' V' X, {7 }0 F; H
at swarm.Selector.<init>(Selector.java:76)) G/ d) L& ~) P2 {# K8 y4 ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 g4 [7 C" Z* {& s2 [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 j" i9 t, ]8 A& o" x, Z% j5 @% `& K5 B9 D; P( ? a
4 {( U' y k* @" l2 \import swarm.objectbase.SwarmImpl;2 o8 j3 q$ Z- f: }
import swarm.objectbase.Swarm;
; r- [( ]) ]4 I+ @2 kimport swarm.activity.ScheduleImpl;9 h: W" m$ i9 ]! Z, F) C& G6 @
import swarm.activity.Activity;/ B. X+ d z2 R6 _0 P0 k/ p& b3 g
import swarm.activity.ActionGroupImpl;# k+ F- ?. l" J: H, {. |
import swarm.collections.ListImpl;
' V! Y4 J# K& E5 ]% jimport swarm.defobj.Zone; - C- R2 ~1 k* e3 g) b
import swarm.Globals;$ U1 T: U( _! `
import swarm.Selector;4 F5 c+ ^9 C' v9 B
import swarm.activity.ActionGroup; 7 ? I1 v! K! _- C& N2 R
class Agent {
/ M7 n$ @: x# q$ X C$ A p char id;
3 @0 H) g7 `9 ]: t! u7 M) F& X$ f. @, h6 C, B4 K7 P6 f, C
Agent(char id) {
( c5 e x5 _% x6 W% F$ F+ {% b this.id = id;
3 C& d$ i* V8 H* L7 b) B8 h- m }
: `$ i8 M- h, t( T2 I! k
k% R$ z! Q7 P$ j" z public void agentStep() {) E0 u4 j, ^2 U( }( _7 z0 l
System.out.println(id + ":" + Globals.env.getCurrentTime());# ^8 `& Z0 C l4 |& s9 t3 c
}
R. `! r$ A2 ?, R}
% i) K I7 g# |; h% D. c( y
+ x d* m, h: D! X$ R8 u7 dpublic class ActionGroupDemo extends SwarmImpl {+ u7 i7 s( K9 e8 u
ScheduleImpl schedule;
7 Y$ ^; z/ Y4 k! [% p7 f+ e8 }" E3 f, ^ ActionGroupImpl actionGroup;* z" v- T% ?& g+ f
ListImpl list;
! J. ~; m' S) L; c char Id = 'a';2 U& G& ^/ T7 i
) h; d* a9 o% {- Z' O! h" G# x
ActionGroupDemo(Zone aZone) {
# A) r6 {/ E6 f. _ super(aZone);
+ ?* B+ x$ d8 f6 r list = new ListImpl(aZone);
2 n/ Y/ Q2 p$ H$ a! {0 i r0 v swarmSetp();' @7 p. _" L7 T. p( A
actionGroup = new ActionGroupImpl(aZone);9 V$ N X7 P8 G+ y" h0 N
schedule = new ScheduleImpl(aZone);
3 A3 `& d5 \& _7 g4 i4 V try {7 i4 K, M# K& [* F9 s$ ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);* {3 g0 P8 n% O% r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 `0 ]. n T# t: ?6 y) C+ Z * J! ?4 n5 K; G3 K2 F7 p3 v
actionGroup.createActionForEach$message(list, agentSel);
* p# }" o/ a" P% ^ actionGroup.createActionTo$message(this, swarmSel);7 D+ C4 }1 Z ]3 e ^, s: n; {1 N
schedule.at$createAction(0, actionGroup);
d% |) D! x6 g6 s schedule.at$createAction(1, actionGroup);) N: G: x# X( S# l8 [
schedule.at$createAction(2, actionGroup);5 K( q7 w" X3 ?+ b0 E. |$ \
8 s; u& X( D5 L+ `+ ? } catch (Exception e) {
% \& ~2 o' Z. F7 t e.printStackTrace(System.err);
0 M% G4 [% K7 T, I //System.out.println(e);$ {; `) U- X# `! [
System.exit(1);& ]3 D, X6 u5 q
}
9 w; z3 f. o& @4 R5 E- R7 Z$ ^+ @/ M5 S- I0 Z8 t5 V5 D. X6 L; A
( e8 C( f" i Y# U$ F" Y. o. D }
* v5 e9 C7 a0 b9 k
+ d% t. ]: g$ A4 L. o private void swarmSetp() {
' w% p7 S8 P& e, Q+ T list.addLast(new Agent(Id));! g1 n" q3 K8 S( G2 M7 [
Id++;4 ~6 X/ o w/ e- _3 U
}
: ]5 G) e0 K/ g8 h6 u! }
- ?6 K7 N6 ~4 Y5 _( J9 z public Activity activateIn(Swarm context) {# Q9 A# O; B& ~
super.activateIn(context);
1 q1 G! K X" N schedule.activateIn(this);
7 I2 X" d9 h. o9 f0 Z6 t& h7 T" g return getActivity();/ u( v6 w/ S' A) a5 K" r: |
}4 j1 r) t0 V( R. L
* C4 I0 p+ {5 `: s0 c- P& d
public static void main(String[] args) { T$ E* q& j% `, b
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' Y: I4 q8 m* _% k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 |8 {/ g8 \6 b2 v7 c0 d' H swarms.buildObjects();
5 T+ {5 D% g5 m, i" m" G9 \- y! S swarms.buildActions();
+ M% q2 C& @9 o [; @ swarms.activateIn(null).run();
, C, R5 |+ w4 B8 E9 o }2 ]; y6 z- Z/ a6 e
% }% ]$ |0 _% P9 I% f} |
|