|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 \) Z7 c! \9 s3 N+ f* L6 F- e/ ?% z4 F5 O% t, T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 @/ F" B2 S* g# {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 u5 k6 s }) e9 o O$ zswarm.SignatureNotFoundException
7 j" ]; n" w; M+ U at swarm.Selector.<init>(Selector.java:76)
2 J) Z- `# ]' A& I, _( K5 x. H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ M7 |0 e7 m6 U7 P9 C( [
at ActionGroupDemo.main(ActionGroupDemo.java:67)! Q# Y: M: k6 l# P8 d- x7 n0 E5 B
6 o, ?5 o, t5 Z; r0 Q
) t- ^- W. S3 I( n1 A/ E# pimport swarm.objectbase.SwarmImpl;
, Y2 ]. e( y7 {' A2 u! o' ]import swarm.objectbase.Swarm;5 ?. u& l7 S' U5 V1 x
import swarm.activity.ScheduleImpl;/ u* ^- T9 d: \4 ~
import swarm.activity.Activity;( Y# Y# C. B& ?4 M' u; ^. }
import swarm.activity.ActionGroupImpl;
6 a. A! ?& G! B' `; d: z" _import swarm.collections.ListImpl;
. Q$ j# r* j% V, E: S# L' Aimport swarm.defobj.Zone; 7 l+ {2 W* F9 l9 \% v4 G
import swarm.Globals;( f( @8 [( ^7 l! ?' Y/ i
import swarm.Selector;
5 _+ y! i' v0 `8 eimport swarm.activity.ActionGroup; 4 R: G4 S7 |1 O$ h9 R( g M
class Agent {
3 _ U8 s6 l* M6 S char id;
9 o! O( K) m" U/ y2 k; R% o0 P6 k: h3 @- b# c9 b$ ^/ p5 K
Agent(char id) {* h2 o u( y! t( y6 i9 l
this.id = id;" f/ M c3 F$ i# G( v
}
( q" a3 g" y, \6 x K4 K0 J) Q$ @- W1 p6 F
public void agentStep() {
9 O2 L1 Q8 [" S( g1 H- U3 u System.out.println(id + ":" + Globals.env.getCurrentTime());5 e4 W7 a. Y7 e) j G3 L3 O
}
, |0 s: R4 j" L" `% L}9 Z4 R) j& T5 K$ ^, ]% y! e: D
& x. a, H, D: E* j. w: u) Lpublic class ActionGroupDemo extends SwarmImpl {0 `. P, B# A/ A1 ~* t0 D& B
ScheduleImpl schedule;
6 D+ I2 y' y2 b; H# K3 u* l: c ActionGroupImpl actionGroup;
0 R( Y# M$ ?0 u7 U# a ListImpl list;" `- Q5 ^* z8 p; N* s; W: z
char Id = 'a';/ L, ?, {" U/ C) T, k; V# }
* [( C. a2 Z$ U: m) M* q
ActionGroupDemo(Zone aZone) {( A! M" r! U1 D$ S1 c
super(aZone);
' K% F% q. o* F$ G/ P4 C( u8 |! V list = new ListImpl(aZone);
9 B. {7 p$ z {) E swarmSetp();! ^; e. i, M: }! D8 G
actionGroup = new ActionGroupImpl(aZone);2 D6 Z; G* x K7 {( V2 e
schedule = new ScheduleImpl(aZone);
/ h+ H8 b$ a5 o) j( a, P; w6 o/ g9 a try {8 \3 g4 P, G- t# i# e
Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 X5 @8 B5 e/ ^* w: S9 Y3 i* u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 P, U' k* P) {: t - \! A0 X% T% j; v
actionGroup.createActionForEach$message(list, agentSel);
c3 x$ X% z0 `& v4 C, L8 O actionGroup.createActionTo$message(this, swarmSel);
# S3 k: T% N( b9 K2 _ schedule.at$createAction(0, actionGroup);- x6 Q: F# n( I8 v0 t; P* C
schedule.at$createAction(1, actionGroup);/ ?4 J6 M% s" g8 K* N
schedule.at$createAction(2, actionGroup);$ I. H; F! R' \% @& I3 q
4 V8 e, I- `9 ] } catch (Exception e) {
" W- |& ~2 I% y; y. x e.printStackTrace(System.err);
9 l- @6 p' b( P3 D0 H# ~, s1 w //System.out.println(e);
! T) E: y7 A2 C% L. Q System.exit(1);& B, ~1 L2 z7 |6 a2 _5 X5 C
}
8 e- O) r/ Q2 z1 e# M! O6 s8 K
! O$ G. k% W: x% A/ v# \0 z. G9 ^1 z8 G$ ~. W: _+ G! w
}
2 D! v6 ^) W. J! ]* H0 W7 W6 h( | J2 }4 I
private void swarmSetp() {: V: w/ q+ G8 n
list.addLast(new Agent(Id));
0 z, j% y: g0 e Id++;
- b2 M1 J' a: w! [: Q1 K0 W% N }6 W; L ]1 I$ e' Y
+ { Y2 L1 S6 P0 o4 h8 z0 s, X2 W4 p
public Activity activateIn(Swarm context) {
% E+ _/ o& |& s super.activateIn(context);6 M- \: F( e5 Y& w
schedule.activateIn(this);! _# f2 ^3 N8 j" m" u2 b' I
return getActivity();4 v$ ]+ d6 W* j0 P' F5 I- w. T9 b
}5 I. S: n& X: }6 H( H, G3 G
5 r, E' |2 a" z: B
public static void main(String[] args) {
: K- f7 n$ W& }& ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! D: J! O {* }5 X L( ?( D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 j, W ]0 X$ K, f* w swarms.buildObjects();
2 B# B/ Q, ?& i swarms.buildActions();
g0 ~ `" v6 ?6 F6 Q# g7 G q# R1 v swarms.activateIn(null).run();
0 G( k' O4 a& t/ h* Y( D }
. |: }' t* N; _' l5 Q. ^$ N
$ F b( k" a% x. |$ _$ F} |
|