|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 j; T: `% b2 _
$ T6 R& R0 _! j2 b: [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. t6 [8 j) h( J) z8 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- B @. l* D4 L4 H: |swarm.SignatureNotFoundException8 W, k) p- W. h' u
at swarm.Selector.<init>(Selector.java:76)7 K+ q' o( {9 Y7 f) I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): F5 n& N1 ]: [, \0 K$ B' Z* d
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, r1 ]$ U. M0 S4 q. T3 Y% K0 {* ]1 o* n3 _/ E9 B
/ I, Y+ U3 i2 v# w; W, T. @
import swarm.objectbase.SwarmImpl;% Y" ]; }0 R1 k8 v; Y/ ~# D2 }
import swarm.objectbase.Swarm;
& G* L, k4 `& k( X* Ximport swarm.activity.ScheduleImpl;
+ e5 n5 q0 L; W* Cimport swarm.activity.Activity;
( q# J8 c0 }8 y" q9 j0 cimport swarm.activity.ActionGroupImpl;3 W# ^5 Z) U/ @- w
import swarm.collections.ListImpl;
+ C; _0 o, y( L1 Cimport swarm.defobj.Zone; 2 E! h" \ X. |5 r2 L
import swarm.Globals;
, n: g. Q* S4 s+ j( [import swarm.Selector;
( {, z+ m* i/ e/ M& z) j5 |import swarm.activity.ActionGroup; # t2 l! A8 v# b4 F) t1 `
class Agent {! E6 R, @8 l* n5 E
char id;/ X6 O5 U; x% z2 I5 k$ x
4 o6 z0 N7 B7 i5 M1 w Agent(char id) {* r X* R7 e1 D+ F
this.id = id;
- ^/ ]) k3 T; ? }6 p, @( [& d# R3 C/ d2 \" h
# V6 _- S3 P/ f( N$ I/ w public void agentStep() {7 \( J1 j. Q+ R# s
System.out.println(id + ":" + Globals.env.getCurrentTime()); y" T4 z+ k9 U7 i9 r' S( m7 B
}
! w2 K& ^5 V5 ~9 F}0 \( J* H% M! |, Z$ X' Q
! z7 F1 D' H6 N) v4 v- hpublic class ActionGroupDemo extends SwarmImpl {
3 C0 y! o' `! w ScheduleImpl schedule;4 ^+ I+ t$ q+ Y. c" w7 t3 k* S4 \) m
ActionGroupImpl actionGroup;
+ v, s9 B2 Z0 \5 `+ e ListImpl list;; H6 `) i, q6 b: `4 P' I4 }
char Id = 'a'; j6 r0 f7 C ]0 S! u
/ `( h. f7 Q+ P& z' }2 B' ]
ActionGroupDemo(Zone aZone) {& z( V' C" F! t; p% b4 i! W/ G1 f
super(aZone);$ p% N& M1 f1 n% C
list = new ListImpl(aZone);
! y: _- {- f# o0 j- d" Q swarmSetp();
$ I0 F5 A6 B% \ o- O* x actionGroup = new ActionGroupImpl(aZone);2 w! f& `( Y7 h6 _2 e
schedule = new ScheduleImpl(aZone);
. r# y0 b) K8 w! x try {4 a. x$ F5 P6 ^# @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" Z& b0 l5 R- ]0 a" W/ Q; U5 O' R% { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* l1 t/ K( C" |) F4 a$ K
/ p1 `: v2 ^) z8 m( r% d
actionGroup.createActionForEach$message(list, agentSel);
) \; s+ f6 _$ T n0 F actionGroup.createActionTo$message(this, swarmSel);4 n; E( p0 m/ x0 e4 P! s8 |
schedule.at$createAction(0, actionGroup);
( {7 }$ t; G0 j7 M/ N, F# h" ] schedule.at$createAction(1, actionGroup);
" }3 V1 C6 s2 _" m2 A6 k% R schedule.at$createAction(2, actionGroup);
' t+ ~5 K2 p' u# K2 `- {
! V. Q5 X, T" q( j } catch (Exception e) {. H! I' N3 m3 f6 H; |
e.printStackTrace(System.err);
3 e4 m8 C* i6 p( a v //System.out.println(e);
) A3 ], e G a5 [3 u System.exit(1);
4 O1 R5 A9 o3 ]1 s }% {. z& {* U( m3 J
. X. O2 S* V! I# v
. o6 c/ M) o& E& C M2 P; S3 | }
" ~; w. l% j5 D) H! U0 m! S& z% `: B
private void swarmSetp() {
+ p6 c+ V, b0 c" Q list.addLast(new Agent(Id));
& [" B6 U3 ~( w; t+ |' ]* y Id++;
/ w' J; d6 d7 ?8 a; r* b }0 X" y& U9 Q9 L; ~: i. X# W
0 y! k# n2 a3 i" c: _
public Activity activateIn(Swarm context) {7 l& F# L, B0 w/ w
super.activateIn(context);" [. I9 z/ t" q( q1 o6 Z
schedule.activateIn(this);' k* R9 p% y, S8 T' s! }" T$ j) l! E4 b
return getActivity();% b3 U I: g1 j* y
}
2 Y9 i) Q P m5 p# N: z3 j) F+ O
public static void main(String[] args) {) x) D6 g* ~% A4 R f" S& U% O. e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) E; r( c) F5 G, p7 y1 z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 Z# r4 F, h) J( S4 m$ O; f
swarms.buildObjects();
. O; L0 S& [; `7 Q6 g3 N, Z swarms.buildActions();
( G0 f* y! I2 M4 C3 b5 K swarms.activateIn(null).run();& y- j5 V( ]8 W; r6 Y" E: ]
}
$ ^, D- _6 Z0 |4 `9 x4 _
; o- H/ S$ M! x I* y# o} |
|