|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 l% e" l, ^2 G8 `+ B
( |. b) T- A' W& C$ d, y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 ?* @4 ?1 \. K0 X) l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 a- d# t2 K4 c3 n# M3 f& e4 uswarm.SignatureNotFoundException
`( o5 y: h9 N0 ^ at swarm.Selector.<init>(Selector.java:76)
! K) N4 q: w6 P0 S D5 n6 \ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ m- f2 j) g; q0 A4 z+ J, |, y/ t at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 e1 Y( R0 A* }' f6 d5 |+ ~" ]: x. L6 k
: L5 O5 s, b: ?. K& u: o P
import swarm.objectbase.SwarmImpl;* P, f3 v* s. b& M5 [; ]
import swarm.objectbase.Swarm;
' a/ x1 W1 T; b0 mimport swarm.activity.ScheduleImpl;
$ T: c% x+ o) o* P! ?% c5 jimport swarm.activity.Activity;
& Y$ F9 y7 A l$ L2 Simport swarm.activity.ActionGroupImpl;
7 f# H; n( m3 x7 K% Nimport swarm.collections.ListImpl;
2 d2 q7 v: K: }, ^3 Wimport swarm.defobj.Zone;
) w( _; n- j, a5 b% Bimport swarm.Globals;6 Q# y8 N' D5 j2 o4 X
import swarm.Selector;( p; B0 p8 w" R0 D+ p$ I* E, O, K
import swarm.activity.ActionGroup; 9 V) _' i# p8 J# s6 g& r5 u
class Agent {# G) p6 V+ b; Y( W# k
char id;
8 W8 c' c' K+ J7 L& ~% v" N0 w4 B5 b: Z2 L m: z9 z4 k
Agent(char id) {
. ]( Y h! X8 q; F this.id = id;
2 z( ^* z, h2 n- b }. O* C8 R8 W/ G$ m1 v, n5 ~
2 \# k$ M/ r. x8 s
public void agentStep() {% `2 f' D6 s% Z8 t" w
System.out.println(id + ":" + Globals.env.getCurrentTime());% N; {2 o7 V, |; T
}& b; {+ O8 U. I+ B
}
) f0 w( y# M0 m& p% w2 Y% P- e' t. U
public class ActionGroupDemo extends SwarmImpl {/ e& V" S" s6 P) [0 ~2 a' A( L
ScheduleImpl schedule;
8 w' m, d3 n) m! H k: ~9 r ActionGroupImpl actionGroup;
4 {, @1 |" l1 S& j) C ListImpl list;& l# s! K/ [2 p% D. ]+ ~
char Id = 'a';
8 `1 W: @+ K; M& _4 ~/ Y! j
$ q9 S4 q2 l, n" Q5 z" ?8 ]/ f ActionGroupDemo(Zone aZone) {
, t, _: ?' j! h6 s7 b super(aZone);* ], @7 C9 I e' s
list = new ListImpl(aZone);
3 @& q6 U/ B/ F: d4 g swarmSetp();- w" o2 U5 w- E7 K$ C2 p, j: Q
actionGroup = new ActionGroupImpl(aZone);" _! \4 z9 `3 g V
schedule = new ScheduleImpl(aZone);5 K) h) P, P5 m% z5 @9 t7 N
try {! ^7 Z B* l! K$ W
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ E _( d5 \% s2 x! c! Y: Y5 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; F+ G- {0 I9 O4 @8 z' L" k, {
8 i- ~3 h# w8 A actionGroup.createActionForEach$message(list, agentSel);
: m1 a8 m8 ~( e+ Y* q actionGroup.createActionTo$message(this, swarmSel);
. r4 N0 C0 j8 W" a7 j9 z k6 L schedule.at$createAction(0, actionGroup);
% q" m5 q- N j6 u8 Q schedule.at$createAction(1, actionGroup);2 f8 k3 b7 i# x( d }
schedule.at$createAction(2, actionGroup);0 @! r- _$ Y( Y" J5 r+ z
' g3 ]. i' a8 W
} catch (Exception e) {0 E" Z$ T8 P9 ]! M5 P$ M
e.printStackTrace(System.err);
1 i4 J7 J8 x: S! t //System.out.println(e);% s, K& N4 g, w8 q- }, ~
System.exit(1); Q" N% g( \ f. ?" l0 I
}
' n& F- e2 P+ i! a. u2 v; P* o5 A, X
) x4 _2 r6 ]' p8 Z
}
" V* H# v- B0 q& G S. x3 Z* p/ K% \; N5 ?7 W2 n
private void swarmSetp() {
1 M" p' s. @4 S, D9 O/ c) j list.addLast(new Agent(Id));! O6 Q1 F& S5 M$ X" U$ B( ^/ J+ @$ t
Id++;" y6 P: P7 c9 I4 n: a% g# p- ^
}
7 J( n! {8 U; r" ]' Z- S
( ]6 N* X: g- W: b public Activity activateIn(Swarm context) {
' u" V* s) j! q: F' x6 B super.activateIn(context);! E9 y" W* ~# u7 {7 W; k
schedule.activateIn(this);' }/ R. S F) I' l/ F% V6 y
return getActivity();: y6 @ E5 l3 i. P7 Q/ Y
}# f) ~* W% ~( y9 s* t
8 a7 N, O3 f0 S
public static void main(String[] args) {; H# }3 m: y7 }5 J r) M e) S* S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" d" ^$ j+ }6 o$ n1 {% i& w/ G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ z0 w0 y" A: O/ O swarms.buildObjects();! M0 |0 |) {( P3 H. I
swarms.buildActions();
: G) T- p% F0 K swarms.activateIn(null).run();6 v/ H0 }1 b! b5 z
}# Q( F1 s# f5 o; o7 Z6 I
: E8 b* V' n. ^* w+ e& J
} |
|