|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# L! c3 W! ]( n4 G- p/ C5 S% P: g( }& A% b) q X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( w, N) ^+ \+ _5 x4 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 M) H z! U, \' q$ d
swarm.SignatureNotFoundException! t* J& i$ B- q& z! y1 D7 u9 c: s5 ~4 r
at swarm.Selector.<init>(Selector.java:76)* F1 w- M: S$ W. |% v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ p0 N$ m4 t. r* S' D% U" W at ActionGroupDemo.main(ActionGroupDemo.java:67)
# ~, J* _( Z1 l$ B8 C+ R; c/ b' ?+ w' b, U6 L0 _" f2 L
, V( w: F! m$ s5 H
import swarm.objectbase.SwarmImpl;
+ \1 p* S- n+ ^* F& {import swarm.objectbase.Swarm;8 P) h! w# J0 s& z" s6 h
import swarm.activity.ScheduleImpl;8 G/ [9 x+ r5 ]' r
import swarm.activity.Activity;. Q9 R i9 e8 x
import swarm.activity.ActionGroupImpl;
$ M- Z" ?% M0 `4 A' kimport swarm.collections.ListImpl;
4 E( x }1 k8 [" i1 Gimport swarm.defobj.Zone;
# R) o# }* w! w' _import swarm.Globals;7 ^- O+ r& ^* G d0 k; R* g
import swarm.Selector;& v0 d# j5 a6 C
import swarm.activity.ActionGroup; & F9 c/ m$ F1 Z! |3 y& _1 G0 o
class Agent {
* ~+ W: ]& }3 R% r% B$ a4 P char id;: u2 o8 K' t8 J# ]9 Q7 _1 j. E
& j* E: c& H q5 G$ H
Agent(char id) {
9 Z" N( ]8 g/ Q& j; A5 L/ o this.id = id;# b+ j3 ~) Q |8 W& u, L
}2 q& h# d, t; e& `$ V8 j
; N5 R" z' C S& N; ]
public void agentStep() {& z }7 j: K6 r" ~( N3 g# R
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 p# R. f& z' s4 T$ C% i }
2 K* k3 E6 ^/ i5 r' L0 C+ A4 o}% _* ^2 }' S x; L
9 _$ [3 L! J; ~ x% ?9 _public class ActionGroupDemo extends SwarmImpl {( p8 |/ \6 W R% n
ScheduleImpl schedule;; h# U1 c9 O4 l/ B' c
ActionGroupImpl actionGroup; {( z' B% g# j) O: f
ListImpl list;
/ U0 I& b* L! ]6 A: r/ { char Id = 'a';0 r" M; |2 R& H2 G+ b, c7 G% r
' J2 L9 |+ F2 s( [) _
ActionGroupDemo(Zone aZone) {
2 W( B' s0 r1 t4 w super(aZone);
( m2 Q- m: m& D list = new ListImpl(aZone);$ [! ?- {0 h, Z: H. R, i+ ^5 ~
swarmSetp();
9 L( T( W2 D0 q" X actionGroup = new ActionGroupImpl(aZone);
! ?( X# T% M4 P; N, T schedule = new ScheduleImpl(aZone);
# o9 m! L4 D& Z/ V8 V try {
6 c L: G$ E P/ e3 t Selector agentSel = new Selector(Agent.class, "agentStep", false);
! o) Z# U. t9 M+ o7 P1 i3 p* L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% K# H: i0 v( t0 H" z6 D9 l7 N1 u
$ {% k g, P' n) ?3 d
actionGroup.createActionForEach$message(list, agentSel);
9 G p- l Z; {2 g actionGroup.createActionTo$message(this, swarmSel);5 D. P& l6 u. O
schedule.at$createAction(0, actionGroup);
- M/ }5 ^" q/ J6 M9 X schedule.at$createAction(1, actionGroup);4 x( b1 h, i7 N% h8 j
schedule.at$createAction(2, actionGroup);1 f0 p u4 p3 w3 x2 P
+ V# M# w) [) ?
} catch (Exception e) {/ o o7 e( L( c- J( N
e.printStackTrace(System.err);
0 u% r" W5 d/ | //System.out.println(e);; v& P% |2 A5 {6 O; t
System.exit(1);' c6 c% f2 l1 U1 q& r6 o# u4 M" V
}
6 e7 N1 c0 f6 t) G/ n; X# l- g" @( o0 N5 n6 J' n0 ?
( A$ b" P/ Y# v+ o, }# C w0 i }7 h/ z& Y' Z$ v) h* T
- q; z. F& L: r6 D
private void swarmSetp() {
- x4 N* h9 i) P2 \- O. s5 s list.addLast(new Agent(Id));
7 |" \& b1 s9 d Id++;. a* o; a% j# N. S6 `
}
. M6 U7 b. A7 z8 ~; s1 I$ G7 S& @" ~+ p F
public Activity activateIn(Swarm context) {
; ]7 l& o0 R7 | super.activateIn(context);
5 S" w7 s* H/ a schedule.activateIn(this);
& r: e# L! `# G% [ Q* Q- R" c return getActivity();$ L- n$ ?" P9 K1 n8 ~
}; N0 Q1 e* H0 T
: c+ v; B: K6 A& i3 M
public static void main(String[] args) {
' O4 v" L8 M* D6 h8 j) W# g Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; t& y) M: {+ m4 i: z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ g. }2 _! ?) s. ] swarms.buildObjects();
5 j m4 @4 P1 S" x1 Z# r0 e swarms.buildActions();4 V. o' Z0 |, n( l; j N
swarms.activateIn(null).run();# S7 ?: d1 V. \0 C& w5 I" Q
}3 j2 L+ n% k* L; N G
& }( X$ o. s# \1 ~% d} |
|