|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) E% g* o1 S9 T2 m, z3 w
. | Z$ B& `) l' i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% ]0 Z6 A3 v9 [2 I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! c9 Y$ |- r: y( p+ C& wswarm.SignatureNotFoundException: h4 U4 f7 @) [% ]7 D/ U
at swarm.Selector.<init>(Selector.java:76)" D& _- a: U7 L+ K+ Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! ?% ^7 j* b6 n r' p at ActionGroupDemo.main(ActionGroupDemo.java:67)" _/ z8 ~3 q# e, }
O$ A- q+ O6 w% {# Y
8 o& U/ o5 Y" t8 D
import swarm.objectbase.SwarmImpl;3 ^+ q7 _- d/ O% [! H
import swarm.objectbase.Swarm;
) v, n. L4 [1 v4 @7 _: m* |import swarm.activity.ScheduleImpl;6 P! F5 d! w7 m, e& u5 k# ^
import swarm.activity.Activity;
3 G" g$ P) v% s5 E/ himport swarm.activity.ActionGroupImpl;/ z/ Z3 B) v, D) \ r6 H0 x( h4 n/ u
import swarm.collections.ListImpl;! x' S& y7 r: U6 J
import swarm.defobj.Zone;
( ~7 F+ Q" g) t. Y( timport swarm.Globals;& k+ d7 D9 w9 D% _
import swarm.Selector;6 p; e6 z- \# R2 s0 u/ ]
import swarm.activity.ActionGroup;
( l. t$ `: Z; V" I: u# ?2 }class Agent {
& ^& b% a( c5 J char id;
- M* Q2 S# v+ c* N: k& H8 @; f+ V) G
Agent(char id) {
* E8 G' R+ Z8 ]' z! E) ?' \- F: X this.id = id;
/ u% \) F d; W, Q }
: Y9 s/ S0 \1 v+ B6 p3 J! j8 I# s: ?- W8 I) y
public void agentStep() {1 `4 u7 o* ~1 K9 A8 F" l
System.out.println(id + ":" + Globals.env.getCurrentTime());5 }2 r0 ^! j- J! ^5 |% y" b
}$ U9 {8 x, l! u9 y) ^- D
}
0 s" Z3 C0 E6 i6 d0 @2 h% L& T% ~
; k U4 u. `) [% H, s% \2 N, ppublic class ActionGroupDemo extends SwarmImpl {
, e6 S6 Z- y& p6 z$ v ScheduleImpl schedule;7 T; S% a) L# j; k2 r
ActionGroupImpl actionGroup;
' D4 G# X8 y' k, q5 Z! @4 G ListImpl list;
/ y4 q+ l2 {8 Y. D$ C ~# s char Id = 'a';
/ I- s) T+ m) I) I! @6 ]8 V. R9 k3 l0 l3 t, z ~ H
ActionGroupDemo(Zone aZone) {% V8 y5 O- t, b9 t1 U8 L0 _9 w
super(aZone);
! u5 s8 _8 k+ e2 G5 Y1 Y, p list = new ListImpl(aZone);
. A) l* @ Q- r, U/ U swarmSetp();
q* P! K9 s, K. C actionGroup = new ActionGroupImpl(aZone);
6 g1 d% a& T# i. B: i+ x5 G schedule = new ScheduleImpl(aZone);
& X1 l5 B' a* Q try {; J1 }! M& g2 P4 [ S L1 R
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" ^( f* A4 ^9 F) u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ A% D- d7 Y2 Q' d$ u" r+ @8 ~% z
: _. z, G) N7 L U! P/ U. O actionGroup.createActionForEach$message(list, agentSel);! f/ U( d, p/ v5 {
actionGroup.createActionTo$message(this, swarmSel);
& B6 q) ~3 _' t, J& f schedule.at$createAction(0, actionGroup);
' O2 H$ z9 J. n* V6 P schedule.at$createAction(1, actionGroup);
, l& c- U* ~) s6 q ?: \7 A schedule.at$createAction(2, actionGroup);
6 j* g7 j+ P+ @+ ~% G5 h, p% L u7 E
} catch (Exception e) {
4 G; L" y( i* n& {4 k& C e.printStackTrace(System.err);
9 \9 o( D7 p* N: E4 d# @; { //System.out.println(e);
3 |( b2 i* ?3 I* v% m D System.exit(1);, R) {! {0 Z# Y: J
}, j+ h& R& I. U: T
( i2 w* V: v9 d2 s$ \2 z0 v- g8 H# s
}
8 M7 g8 X1 S2 W2 ^) m. j
) ]* I1 ~+ Z" |- ?/ g- o private void swarmSetp() {* I& P0 Q9 C0 I# D9 D
list.addLast(new Agent(Id));3 X- L* S" B0 y+ X7 Z
Id++;, d& A, I- T- l6 k4 |. `: w
}% `8 e7 s( y9 m8 Z
! C4 t: J& D7 c. F+ I public Activity activateIn(Swarm context) {# H5 s! ~4 n! |: k; m3 T, Y
super.activateIn(context);
! |1 Z" S2 o+ `& G: Z! D schedule.activateIn(this);: p, q$ y6 b- H9 C, ?3 m2 |# y. j
return getActivity();
K: ]) x" f* i2 t }
% @2 l7 o* u3 O* X% g& ]8 [
' o2 S5 {+ T* W6 l public static void main(String[] args) {" V9 O5 T; }/ W" t! i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 P$ V5 h) V3 W: Q" m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 L1 |# j! r ?3 P" ]0 ^
swarms.buildObjects();
' B8 Q* P( G: f2 F" Y7 G/ U& u) z swarms.buildActions();5 U" u% w9 ~8 |4 b/ R$ v5 z
swarms.activateIn(null).run();. V: C( B4 A |+ u& H
}
; p% o. ]8 K. X1 _: x7 d2 K, F* c$ \$ N4 \4 w8 g* E
} |
|