|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 w# I. U2 m( T* O7 v8 W, s
* L" o5 V8 i( r4 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) W5 t& R: g) n& Y I- L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ L+ v- H' `. }9 Kswarm.SignatureNotFoundException
+ M# l5 d. X6 }; I at swarm.Selector.<init>(Selector.java:76)
3 K+ ]. j+ N- a% i at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* X& ~9 g- G9 ]3 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ k/ _( k9 }' _+ d* @# a* M3 f3 Q6 O6 T8 ^2 Q( d/ t5 d. q. G
. M: u8 Z: v- ? S/ p8 N8 Ximport swarm.objectbase.SwarmImpl;4 p: p \$ F& i8 |+ Q
import swarm.objectbase.Swarm;
3 d( f- t' O- W& H% S, nimport swarm.activity.ScheduleImpl;" f% {$ j3 X4 S5 j: k1 H$ \$ A/ n
import swarm.activity.Activity;- C6 v7 r! y O, U4 x
import swarm.activity.ActionGroupImpl;
2 q( ]* P. f1 U% ?import swarm.collections.ListImpl;, {- E: W$ I, F$ C" j
import swarm.defobj.Zone; 7 k+ s- v: n* `+ F. {/ p4 `
import swarm.Globals;8 s% U" h1 Q3 X) _& @2 q0 y
import swarm.Selector;
5 H* [ ^+ R# ^; E c5 Y% B0 Cimport swarm.activity.ActionGroup; 5 P# q: F3 f8 m% g. K2 @
class Agent {
1 n& f4 j& ?- P# O1 q$ u char id;* \$ F! x1 P* \4 ^% [1 j
$ o; K. P" T' e; l9 G8 L+ u Agent(char id) {
3 e: {8 L7 F4 R this.id = id;
: D6 O- v1 e" z: }# R& Z p }6 |) R0 m# @$ n! y I
* g+ t3 j, N# s9 W) O3 s public void agentStep() {' l) u/ f* y3 i7 `$ p
System.out.println(id + ":" + Globals.env.getCurrentTime());, F( P8 r5 b3 L; k
}
7 g/ E% o6 {/ X2 P5 B1 o}& h, s! t% n+ O$ o
& d8 L, E$ n% r6 T! Apublic class ActionGroupDemo extends SwarmImpl {7 `6 c2 p2 l, {' _7 ?5 {
ScheduleImpl schedule;4 Q. \( N a+ T4 t# ~% p
ActionGroupImpl actionGroup;
, x( o8 V+ h- h5 |0 u7 E ListImpl list;. {% d4 ~( D" _ i% {
char Id = 'a';; e, Z: k; N7 \ L6 P8 A
- @- [& j# p- A+ z4 v7 t ActionGroupDemo(Zone aZone) {
6 ^; h4 `% `& O9 M: X( { super(aZone);
9 i6 ]0 |% T& ~ list = new ListImpl(aZone);. {$ X% M7 E( J
swarmSetp();
A- |1 G0 O. Q% b4 F actionGroup = new ActionGroupImpl(aZone);
" T; i: z6 [9 Q! p" c6 P8 n schedule = new ScheduleImpl(aZone);
( w8 ?0 S% P: O9 O, v try {
; X" K3 N" M8 d# \/ p, G3 `! C Selector agentSel = new Selector(Agent.class, "agentStep", false);; K8 q5 h' C% S; h/ N& g k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: {, v8 }% B! R* ]$ Z7 H3 `) B 6 i- S# E5 I3 [# D. K4 z! L( M, X0 u
actionGroup.createActionForEach$message(list, agentSel);
( i: S1 S0 `1 ?1 L& x actionGroup.createActionTo$message(this, swarmSel); w! g% I) t. K3 K) j- f8 Q, \
schedule.at$createAction(0, actionGroup);
9 @2 D0 S' W d" U schedule.at$createAction(1, actionGroup);
( b- [! r4 Y, |; V3 v schedule.at$createAction(2, actionGroup);
( x& F# L/ ~$ h) k- c, q
$ |' M6 b; L8 z' n } catch (Exception e) {
4 x1 _. t2 E7 m( `( k2 x: | e.printStackTrace(System.err);
# L' ^" D+ B: Z% [1 ^; g //System.out.println(e);
% o! n9 w. T- ^- u System.exit(1);
3 H, e4 J6 S8 @! d( u }
" U! ]" `2 G* o' i7 m( ^) m! l" c# l3 w$ s2 A0 E; U
% m2 u9 j2 j5 I$ U4 }+ C f }
- D% C. g4 K! D+ H0 ^
5 a% b* u# v# e# d2 N2 R, r5 H2 U private void swarmSetp() {" ~: N' | r+ ?
list.addLast(new Agent(Id));
* c% ^/ N3 _+ _ V" E Id++;- ~, a7 ^4 R* B; H8 a. k$ y
}- O9 P& [+ {( _
# N% z8 s$ p. o3 y( X% j3 m2 X5 p
public Activity activateIn(Swarm context) {0 j. w( s' g3 O4 R, l1 N! b' l
super.activateIn(context);4 M: l/ ^6 `3 v2 N" g' A- f9 ^5 i
schedule.activateIn(this);# s$ K; N+ l y
return getActivity();
% ~" F7 b& s7 m! f0 p9 [; k }/ J. H" x# }& s1 c
& v" a0 b u3 R
public static void main(String[] args) {
: e; P2 W' V9 `% P6 p' J7 v" a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 E( X0 S3 u1 y7 `; @* h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" Z) f C+ X* A2 X swarms.buildObjects();
! C8 j- V, A+ Z swarms.buildActions();
8 B" Z. M6 u, p2 T8 ? swarms.activateIn(null).run();4 v8 n- W T: }! o4 e2 K
}9 ~2 c$ K0 E8 W
" e' D* ~6 e, @9 _} |
|