|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
N2 ?5 i" u K7 [& p0 r2 p/ T0 V
& M, m2 w2 j& a+ W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' [ h9 d* s$ s, P3 y. E1 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: z5 ^4 x( b4 v- `' M% T
swarm.SignatureNotFoundException
, C3 D* s5 J) C8 E! b9 j at swarm.Selector.<init>(Selector.java:76)
8 m: x9 O5 {' I/ i! v+ d: u at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 T4 e3 E" F W5 `/ U at ActionGroupDemo.main(ActionGroupDemo.java:67), O' n5 s8 P$ @: \4 x
2 o3 @/ L- I6 {& b" p: K7 P& p
: H( S" Z/ i& o Cimport swarm.objectbase.SwarmImpl;
6 p) }/ F! O2 i G# limport swarm.objectbase.Swarm;
8 c0 }- t% N! u, n& y- Vimport swarm.activity.ScheduleImpl;; G8 t! `9 h* C" y0 |
import swarm.activity.Activity;. m* _! p$ O0 F3 L. A
import swarm.activity.ActionGroupImpl;" a7 Q; N0 `) ?0 o6 y
import swarm.collections.ListImpl;
1 G7 O2 ~3 g# C. |! b' mimport swarm.defobj.Zone;
( D) P. M6 n) {import swarm.Globals;, ^7 W3 w- v0 h& z% ~' l
import swarm.Selector;
! `" ~8 V- `1 X+ Wimport swarm.activity.ActionGroup; 0 h i( v1 a2 H+ \
class Agent {6 [" X# d# J4 E) l% K- b8 T+ l8 c7 {
char id;
3 `! u2 p& q% H) u4 i+ j% C" y9 ~& J; ]+ [1 @
Agent(char id) {8 k* g1 b' L1 ?& ^+ t
this.id = id;
$ O, J9 ]0 F! t8 H& S% O4 L }2 L+ O* g8 ^7 k
5 ?+ T9 r& x2 N% ~( V! ^7 a% j# S" ] public void agentStep() {6 |) }. C3 y; S. h' t1 y. J
System.out.println(id + ":" + Globals.env.getCurrentTime());
- G. x2 s9 x$ L, q }
2 ^9 \$ S7 R4 |# |4 S6 @}
# p# U% |* e+ \
, } ?8 Z9 s( n& Ppublic class ActionGroupDemo extends SwarmImpl {, a. c' ]8 M( | |( P9 R
ScheduleImpl schedule;
; i: X5 n/ g4 u" @7 B. x ActionGroupImpl actionGroup;) K5 p1 \ c _ z7 N7 D/ S
ListImpl list;
: x1 }. S V ]" m- b char Id = 'a';
2 o( T7 U7 F& x$ W2 t7 v6 x# M z7 R, G4 X3 B5 S2 B, J' j' u
ActionGroupDemo(Zone aZone) {
; _) v2 i5 o! s( v3 H# V super(aZone);
$ @" V/ Z* m& r1 D list = new ListImpl(aZone);
9 A5 K2 a* f2 {4 k swarmSetp();! ]9 ]+ E }/ u' G! r
actionGroup = new ActionGroupImpl(aZone);
# Q# |) _5 Y! r! M schedule = new ScheduleImpl(aZone);
9 W9 h, ~& A% F9 `9 ] try {' e( }/ a, l+ ^$ L2 ~6 r
Selector agentSel = new Selector(Agent.class, "agentStep", false);& s4 c0 e( G9 X% Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 W5 Q3 R- i( W
% p a2 T2 t+ X9 x4 ^; z actionGroup.createActionForEach$message(list, agentSel);3 l4 p, `& q' e. ^! Z4 e
actionGroup.createActionTo$message(this, swarmSel);) s$ y7 @0 u: \% I ]
schedule.at$createAction(0, actionGroup);1 @3 m+ j2 }- U2 b) [: F
schedule.at$createAction(1, actionGroup);: ]( u, s. v4 @
schedule.at$createAction(2, actionGroup);
5 X7 O, F5 k+ `' K6 [: c& k
6 Z! V# \. b/ z3 L U } catch (Exception e) {
2 E. m2 v3 p# G3 |4 b' n; ~' Z2 Q5 Y e.printStackTrace(System.err);2 n5 W+ j: @9 c( ^, `1 s7 ~+ X3 d, w
//System.out.println(e);4 v( J7 M; h6 _. g- m# f+ _4 F
System.exit(1);
, B; \5 p4 ?* F! O' a! u }; F# ], N! Z3 G+ Y% N
( q+ o4 N# F D% B0 M7 O
3 n, h* g5 E. P: @' _' D
}
; r$ m* T @$ P" a" L: }3 T6 E( p4 J9 J+ T V; E. w
private void swarmSetp() {+ g( j8 T; _3 a8 U* ? f
list.addLast(new Agent(Id));
; K \ c% J' e3 E& j Id++;
: V) d- M8 g- q4 q9 x- Y* S7 O2 k: M" ^ }
: i5 k8 J; {& j# p9 p* u- E' O5 t( x6 Y& b% p. M
public Activity activateIn(Swarm context) {8 R1 t! z) L- A9 |/ ?4 x7 t
super.activateIn(context);- [2 K7 v c2 D/ {# I! z8 Q
schedule.activateIn(this); Q2 r+ I8 E7 N1 [* k) R* |
return getActivity();* _/ i" [; K# h: Y
}
1 ]. O; T t! z* c6 U2 Y
- \! }0 ?3 ^! U* _* F public static void main(String[] args) {
( `- U$ T: [: J) M! R6 Y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 a/ r; L( \' k
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 b, G) W) u+ |+ c, k* y1 H
swarms.buildObjects();/ e# X1 \6 L* y$ x0 [# F4 Y. F0 |( Q
swarms.buildActions();7 e' z1 H( }8 E+ S( c* C
swarms.activateIn(null).run();; M$ Y( ~7 p! s' q/ Z$ ~0 R2 n
}
* ]' W: p8 Y: n# Z/ C) P9 u6 t& F9 _, E$ Z
} |
|