|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % e1 v x2 H8 U
$ n& r3 |" _+ a5 v3 y( Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" }( ]! D1 d" Y9 J/ }/ @- q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 c8 F% B* m* b- }. f, D
swarm.SignatureNotFoundException
2 b# M8 c9 e }0 h- E7 f at swarm.Selector.<init>(Selector.java:76) o: i! m9 @6 m9 A2 J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ U- O6 |' u3 ~# N( F' M% @/ i at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 s; q& B& R \% Q2 `; ^( F s7 R5 g* W/ c8 Y
3 G% V3 ^" `( _* ]! ^import swarm.objectbase.SwarmImpl;
9 {8 z- M& Y1 Z# i$ yimport swarm.objectbase.Swarm;8 T( G) ]5 V, y: a' ^
import swarm.activity.ScheduleImpl;- q( ^ @2 z7 ? w4 Q" l3 N
import swarm.activity.Activity;$ g6 b P: {( [, A6 F
import swarm.activity.ActionGroupImpl;
; N4 {8 G9 Y+ ~* K, Himport swarm.collections.ListImpl;) l' v- i R _2 Y+ }
import swarm.defobj.Zone; 9 g% v' P' p5 f T
import swarm.Globals;
8 G8 |# E: C% T' P1 P$ Q! j) \import swarm.Selector;( F5 J2 ?5 X- l U8 j
import swarm.activity.ActionGroup; + v- G3 Z, X; h1 u( l. n
class Agent {* D" D: \+ R- ^% Y& ~
char id;& Y* k" Q" i9 w p$ H( P
. R9 L& j+ s7 Z' K+ v# B- _ Agent(char id) {
* Y* W5 e" ^/ E this.id = id;# @* J' X$ d7 j4 A; R
}
) n& G* e) D. f& `# H/ ]* A8 N" Y4 f9 O
public void agentStep() { b( Y2 @2 ?8 {' V \
System.out.println(id + ":" + Globals.env.getCurrentTime());0 N! ~0 W/ o* c9 W- R" P8 \9 r" V
}
3 c% N* I* F) t}' ]) P i6 b5 F" T6 \. Z
O" W$ c3 ` G% Y3 F' Mpublic class ActionGroupDemo extends SwarmImpl {
, u: z9 R9 i) S q ScheduleImpl schedule;
: o* [8 V: K: f1 g ActionGroupImpl actionGroup;
' l, |+ G" V/ |% D ListImpl list;
9 B! M. N$ n$ ] n* U. [ char Id = 'a';1 u4 I; p5 O) S5 O
$ d$ V$ n3 W l$ z ActionGroupDemo(Zone aZone) {
- G3 V. I2 A" p! T super(aZone);* @$ v& S3 ~0 u3 e+ S* ~; T8 a
list = new ListImpl(aZone);
+ m: ]3 C# Z# i! R1 n8 s swarmSetp();( a& N8 g1 Z) ~# }. [' M
actionGroup = new ActionGroupImpl(aZone);4 u4 T8 p; A9 u% s/ R0 e0 G6 z
schedule = new ScheduleImpl(aZone);
' q" E% s) h( s0 y. z1 ]& ^# U try {: m; C& y0 d9 u/ y/ K9 f4 }
Selector agentSel = new Selector(Agent.class, "agentStep", false);
, I* O1 U3 T, y( \& s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ P& k" H0 v5 N1 R
) y* U f8 r* E* \0 f) R' } actionGroup.createActionForEach$message(list, agentSel);$ k; [6 m9 h; D t3 z
actionGroup.createActionTo$message(this, swarmSel);& B6 ?' `1 i2 i& ?3 w/ E5 ]
schedule.at$createAction(0, actionGroup);6 U% _7 m, p1 f- _. P% o
schedule.at$createAction(1, actionGroup);2 B% ^5 I) [1 ~. c6 L7 L9 r' Y3 j
schedule.at$createAction(2, actionGroup);, n% g y7 m$ w" p: N2 f8 p
* e/ F! ^: H3 E
} catch (Exception e) {
7 ]2 n0 P/ j, V e.printStackTrace(System.err);
8 @/ t# e$ M0 [% \/ X" T/ J //System.out.println(e);
8 U6 t3 S, ~* I4 Z5 c2 E System.exit(1);& E/ t: }, N& l7 U' `. ~) f
}
, i! U9 {! d. l- v1 a3 t: g, _1 t$ J9 ]6 l# C/ g
2 b# j, A9 p: W0 h
}4 W, D- m. z$ ~: M1 a* j7 X, ]
# W) W- }" m2 d6 {! i private void swarmSetp() {6 y2 s% ^# w0 R* t4 \6 U5 _
list.addLast(new Agent(Id));: I- ^8 G- {% C9 ~. n) m! o# F
Id++;+ e7 K4 u+ i, \5 m6 H) s3 Z
}$ Q2 }' O7 @ o1 ?0 U9 `# R) k
. ~% O6 J2 b3 c, V public Activity activateIn(Swarm context) {
$ x. f6 x# a8 Z super.activateIn(context);
/ D3 m/ [0 k9 w8 R. {1 z schedule.activateIn(this);
0 Y9 z, o/ u: F" R, m g' X8 l! o+ l return getActivity();6 t% f' N( \5 j3 E; Y3 v2 R
}
& I4 J7 U `/ c% L5 r* \$ w2 W9 e$ D) p
public static void main(String[] args) {5 u% @; B. g- i: M: [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 V7 }, C0 U- u" ~% K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. Z' T9 X& `. P/ k5 ?
swarms.buildObjects();" r5 }# x6 @( h6 c. R5 h1 f+ u
swarms.buildActions();- x3 Y3 R. f2 e8 T% a
swarms.activateIn(null).run();
) K; N# C- X+ H* a1 i n }
; t. [ L! _4 H- k; f" b& x$ }
, g: _3 C1 A$ c3 S$ j} |
|