|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . l, S) H1 C# u/ i
" F6 u5 }% L; j% a5 p% P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 h9 @" C6 Z1 k" p- T0 M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 s% ?' w3 t+ l g- Q8 _! Y3 [
swarm.SignatureNotFoundException
' i% L6 C8 c: }" u# k; V+ K) [ at swarm.Selector.<init>(Selector.java:76)% L' V/ }, X3 l7 V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 y u8 N! P) D6 H
at ActionGroupDemo.main(ActionGroupDemo.java:67)
' V- S! K5 i5 x; O7 A! p
+ ]" C, q2 j8 C/ _( }+ r: I/ j! j. J; N2 a
import swarm.objectbase.SwarmImpl;8 i# B' ?) _* C& V: Q
import swarm.objectbase.Swarm;; H% s2 i ]. L
import swarm.activity.ScheduleImpl;
6 Q7 L' K6 P- {% I9 `import swarm.activity.Activity;
5 _" f; o4 z0 J. b& x1 a' o5 ximport swarm.activity.ActionGroupImpl;, K( e% G3 n* z+ c3 `* V2 n
import swarm.collections.ListImpl;# T3 ]! U* E# E+ n, S9 [0 S8 M
import swarm.defobj.Zone;
& R: o- d% o4 j( u0 I1 G' R2 ]6 Wimport swarm.Globals; O: h! ]0 N9 j8 f" g2 C$ _
import swarm.Selector;. j! \5 Y; v/ i9 ?
import swarm.activity.ActionGroup;
5 L a1 b* ?; p7 t% Kclass Agent {$ H# n* Z. L; U1 `2 o8 g7 Y
char id;
; U2 B5 o k% ~) Q* _2 |; j5 R/ E. i( c' B6 u; M
Agent(char id) {# M8 Q- V5 r- b% t+ \* L
this.id = id;
) Q& e O! H* @- g' V7 s0 M& t }
5 k6 y. v/ P: ]6 S6 s& u) h- T6 l+ [! n' L' I2 D
public void agentStep() {/ J) _4 R! v, e0 p/ `% f! X" n6 X
System.out.println(id + ":" + Globals.env.getCurrentTime());* I0 p$ h+ H' c% S& c+ m
}
! T' q* A4 K8 O8 l! Q}
" Z1 V* ?8 i. a
0 j' }+ Y$ x! J/ N, y$ `7 Fpublic class ActionGroupDemo extends SwarmImpl {
& M, J! a* ~7 E1 D- Z ScheduleImpl schedule;
5 ]2 K. n, d6 S v A3 X) Y ActionGroupImpl actionGroup;
6 [) w n. x Y2 D9 l ListImpl list;
' ~: d* M' `, P& ~ D char Id = 'a';
( r/ C2 m. P0 G. E8 P n; S; A" E: N' k- |2 Q
ActionGroupDemo(Zone aZone) { ^- L- Q0 W; J. h7 J/ R/ S
super(aZone);
# D q9 G8 W% g5 ^* n: @ list = new ListImpl(aZone);
* W+ W8 u9 D. F$ y7 `& _7 K9 U' t swarmSetp();
9 C0 M. _# T) K' r0 J& M actionGroup = new ActionGroupImpl(aZone);5 q6 l, q/ u- G2 b
schedule = new ScheduleImpl(aZone);, ]+ K5 z/ O0 Z4 Y# }1 Y5 ^1 r
try {) q: ?; z! W+ e# h4 |6 s
Selector agentSel = new Selector(Agent.class, "agentStep", false);% l4 Q, o0 s1 ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) y# `: p4 `% ?. n& T: \
9 z- ^5 F, [) m" y! [ actionGroup.createActionForEach$message(list, agentSel);
7 |+ K9 n& a9 m0 Z; x2 |' K v$ \ actionGroup.createActionTo$message(this, swarmSel);+ ^5 D) E h4 ?! m, T; j* |
schedule.at$createAction(0, actionGroup);
6 _: D8 H! n2 e schedule.at$createAction(1, actionGroup);
$ l6 I0 ?7 I" G2 }3 X schedule.at$createAction(2, actionGroup);8 [6 r U3 F, O6 |; \
5 ]& C$ s7 i) r T% [ } catch (Exception e) {
0 ~' G' m( f, _* i$ P' B, ]/ D e.printStackTrace(System.err);, ?# Q- L4 F. K0 ^
//System.out.println(e);5 W o9 J' k6 q4 G
System.exit(1);+ [0 O" y5 z3 O( S6 ?! b- Q8 J
}+ Z/ D1 x& E8 k* i
' B) b: `; W; e i4 P: z; }4 j' Q
' Z6 C' o) K$ Z& L
}1 e# f+ T' [: q, e+ e
; D7 s8 u2 N: H' Y8 A* u
private void swarmSetp() {' z( e% S: [- r) i% z
list.addLast(new Agent(Id));, _ W0 }/ _; D9 W
Id++;* h4 o7 n2 l# m1 a3 U! R' ?4 f8 U
}
6 ?. m& R. R( [; x# v& }, F" g% V! Y* r
public Activity activateIn(Swarm context) {
2 g( |! ~5 d* u4 f4 c super.activateIn(context);3 B7 f6 x& d8 H h9 A
schedule.activateIn(this);
4 p$ f! V" p) Q* o i \; V return getActivity();
$ u. V2 |6 {" m1 ~3 ~. H }
. \ ~( D$ ]+ P% ]
; U7 }1 l* g2 @! U) u* } public static void main(String[] args) {
! O0 x7 N B+ C Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 t( K8 ?% m1 i" Z0 l1 K8 q3 K5 h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 F; n* J& P; @( Y+ r swarms.buildObjects();
( D1 d/ J( ^) T) h) N G swarms.buildActions();( {" r$ F; U6 z' f" P
swarms.activateIn(null).run();0 e+ k, s! _( ?" ?& d0 d
}5 i3 v4 D' _" S8 Z, B- |
X0 G p6 l( [1 L( B, {} |
|