|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & N8 A% I+ L# u5 n
$ X+ t; T5 R& K3 h1 _6 |( \, X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 p$ c) v1 z7 p. v7 p" {& @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( W) ^! c8 S% |2 M! A" J1 E: {swarm.SignatureNotFoundException
7 c" F# z) _ N# T% N( L0 V! ^ at swarm.Selector.<init>(Selector.java:76)
2 `, }$ K8 v- K/ z5 \7 v at ActionGroupDemo.<init>(ActionGroupDemo.java:37), I9 ?* W7 r T$ J& Z* S
at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 t. x3 ^; w5 G8 N( I0 b, k
- H$ i4 y( p6 R5 R8 e, z" l) Q& d3 M
import swarm.objectbase.SwarmImpl;) p# o0 d6 j4 m* w' l
import swarm.objectbase.Swarm;
" B2 Z2 J% v* _+ Qimport swarm.activity.ScheduleImpl;
9 r4 k: W. }7 |" e& Simport swarm.activity.Activity;
7 V6 D, \1 I& [0 aimport swarm.activity.ActionGroupImpl;. @9 u7 M# A5 C
import swarm.collections.ListImpl; [1 q9 l; z8 z4 Z3 B
import swarm.defobj.Zone; 8 y! D$ g8 K1 j
import swarm.Globals;
8 p& T6 U# v5 v. rimport swarm.Selector;* [4 H/ q6 a+ O# |3 Z: s0 w* A
import swarm.activity.ActionGroup; 2 b- g% D) N9 u! V0 [3 _
class Agent {2 D2 V; ^- R( T" m ^
char id;
4 Q# X! x/ C$ B. {1 X1 g8 y* G; _% X
' ]1 j( [! ]" n# o Agent(char id) {% j s* W% D+ \1 E# n; [; x3 t" F
this.id = id;& R1 E( P# X W7 {1 X& X3 \
}3 L2 e8 ^" Z/ S2 L. Q8 v6 y
, F+ k+ u$ e2 _7 ^$ e
public void agentStep() {( Z) u. O3 ^9 c3 B- l$ z8 I$ K
System.out.println(id + ":" + Globals.env.getCurrentTime());4 C* s2 y( Q9 C. B6 X3 G
}
& V3 t- `/ \: T5 W6 V}+ k, m; f; W6 u) F' O
: O6 }5 T7 o# i1 ^* }- A+ A8 s
public class ActionGroupDemo extends SwarmImpl {
. u8 W0 z6 c ~/ N. } ScheduleImpl schedule;
$ T$ f/ }5 a$ s o0 h d- @ ActionGroupImpl actionGroup;( i0 B& K! ]0 u3 p3 E2 ~# E
ListImpl list;
5 Z+ {7 Y" { u: Z, Z char Id = 'a';- W1 `! |; w4 g0 z, R0 ?) w& V
( x) A: D8 R. L/ m) s2 D# V ActionGroupDemo(Zone aZone) {- \. l0 Z7 ^- T: L
super(aZone);
8 X& d8 ~1 d2 R7 ~- Q list = new ListImpl(aZone);
4 V) \' n5 l# j& Q" Q% d& f8 f swarmSetp();
3 A# Z+ g' \, H' Q2 {" Y# b% r actionGroup = new ActionGroupImpl(aZone);
) Q; C* t" F1 q# O, n schedule = new ScheduleImpl(aZone);
- I7 B. a! ?/ d try {% p0 u- P( i% W8 N' b: w
Selector agentSel = new Selector(Agent.class, "agentStep", false);" ~9 l' I2 G: ]3 _2 ]+ \, o4 a3 r5 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& E, G/ t/ p0 z, b
* F+ W: u6 v! R& ? actionGroup.createActionForEach$message(list, agentSel);
! x7 I. }; c1 Y: z3 | actionGroup.createActionTo$message(this, swarmSel);. \1 |5 o2 t. Y& ?' l, U7 |) v- \
schedule.at$createAction(0, actionGroup);
/ V# @! B9 u0 o U* X! X0 g5 L schedule.at$createAction(1, actionGroup);; \/ o' E2 p% t* o# q6 I- O
schedule.at$createAction(2, actionGroup);- Y8 I* Y7 s# T- ^* ^
5 o, u! e$ R7 h' b } catch (Exception e) {& N) @1 K0 _; L: _2 M$ M6 e
e.printStackTrace(System.err);3 Z( X# }' J+ [5 U8 m% ?
//System.out.println(e);
9 s) I* X0 V# W1 A* M2 r" C# c. u System.exit(1);; B+ w# i* X% D0 P5 j& Y9 i
}3 [: b& _2 U% t0 A( G- f+ D
, k4 w6 y D, b) f: S) h" h
3 \' s1 {/ b" {! |
}7 {; u! h2 b' m8 p% k+ s
. c8 K- y! G- V3 f! u! D7 w$ ~ private void swarmSetp() {
, F& b2 P5 V/ w' e list.addLast(new Agent(Id));6 u z& s( J4 l9 H1 h5 U' o
Id++;9 G C- |& s+ `% s$ O. e
}
' s" G. }) v! o- q$ Z" J2 Q
% B+ v7 O9 }2 T6 W' L7 e% ?! s" q# { public Activity activateIn(Swarm context) {
' x) E8 ]+ _. O! |5 I super.activateIn(context);
- q+ H; M! q* o" R8 |4 { schedule.activateIn(this);7 F2 u+ H) x# F) w
return getActivity();5 B- F) y9 }$ l ~4 R- A
}
/ l7 f. ]* c; n% H! l- R. m3 A5 C. q5 e! F# L3 r- T% w
public static void main(String[] args) {
7 v7 e1 B F6 w& J; y% n) b a- H5 ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) Y: |- T. a' ~- V- S& w0 } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ G/ m# F+ Z1 e7 n! U7 W0 i swarms.buildObjects();" n8 _! W& a( p$ K( {. s
swarms.buildActions();3 O; Y& ]2 b2 v8 z' D: Z r
swarms.activateIn(null).run();
; R2 B4 z* N8 ?7 e$ f0 ^9 l, ^ }2 k" Y0 s# Z- Y1 s B
2 V9 J' N0 @6 ] }! `) K/ z3 P
} |
|