|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 C+ [0 C) d! R* O4 ^/ P
m3 b' J! h% Y( Q# N3 F4 F1 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! ~1 l' h% Z) D; g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 s' V+ g3 j0 ?) D$ m9 B2 I
swarm.SignatureNotFoundException
4 j# L/ q+ @9 I! n2 l3 Y at swarm.Selector.<init>(Selector.java:76)
! b9 g( Q+ ~/ T8 Y& c at ActionGroupDemo.<init>(ActionGroupDemo.java:37): O! |# `& }" C# k, e
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 H3 R$ c- W+ u9 O& v% i$ B2 D, X. n: ?. A# Q O5 H
9 q7 x3 R$ S% j& @' F& \! ^& x
import swarm.objectbase.SwarmImpl;' @* ?' m0 } ~) x, n
import swarm.objectbase.Swarm;
# a7 P4 b& F' ]# o& Q; d6 ]* Eimport swarm.activity.ScheduleImpl;# f' w( v5 S3 X1 ^
import swarm.activity.Activity;
1 v" p2 X& ?7 L; ^( timport swarm.activity.ActionGroupImpl;
' j( f; }# V; Y. ?) Himport swarm.collections.ListImpl;) K- z* N2 W6 C" r" U
import swarm.defobj.Zone; 6 ]6 x% }/ M/ G: s
import swarm.Globals;
4 D; {* _) k4 V z$ f* U0 kimport swarm.Selector;& f& ~+ w$ r' L* D, K& V
import swarm.activity.ActionGroup; 2 K: r& ^, Y/ P- ] E
class Agent {( c3 e0 X7 z2 \0 k5 V; n" c
char id;
3 v' B4 k! W6 L- G" E
: c; e1 D$ W# ] Agent(char id) {
8 S2 [0 A! E" c5 x! m& A this.id = id;) L: A" I# B7 b$ {# f
}
" U4 z7 a3 Q- P/ Y* l4 W; f( e @8 y7 w; D
public void agentStep() {
6 v6 z# h& v0 H6 m# i$ z" _ System.out.println(id + ":" + Globals.env.getCurrentTime());5 g' L) G1 x) ]) c0 K) G r
}5 p7 b6 {7 F* Z( ^
}( a4 s: i% |! h$ ]- n9 Q* J
9 E+ }5 g! d. f/ z9 B
public class ActionGroupDemo extends SwarmImpl {
8 H k7 o' ?8 B0 E: j3 Z0 o5 t ScheduleImpl schedule;
7 X% b& c3 o$ m% W ActionGroupImpl actionGroup;
) v. l; I9 S& i ? ListImpl list; Y9 v) C$ E; M
char Id = 'a';) I4 r; k V) l: H5 f
7 O6 u" i8 J) l ActionGroupDemo(Zone aZone) {, o# b G4 c9 b% n& H+ z& t4 y
super(aZone);
$ x& {7 c( _$ m, v# j5 ]) T* F list = new ListImpl(aZone);
' X5 c& B1 {2 a- Z swarmSetp();6 X& b/ M# |$ |8 D: b
actionGroup = new ActionGroupImpl(aZone);7 {/ @' P# F; F" x% q
schedule = new ScheduleImpl(aZone);
2 m7 t+ _/ f$ |. ^% _ try {/ t. X8 s- A. x# G
Selector agentSel = new Selector(Agent.class, "agentStep", false);* s) s+ ]8 z: P
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 g% p. r' W8 A; t( B: T
8 X" U. ~( p5 O/ E: K6 s
actionGroup.createActionForEach$message(list, agentSel);& J( _6 T# u( R. C
actionGroup.createActionTo$message(this, swarmSel);1 |2 T; F0 y; ^5 M
schedule.at$createAction(0, actionGroup);! w2 \5 e/ M. j: h" q
schedule.at$createAction(1, actionGroup);5 d% `) W( z' B+ }8 |* G: a- g
schedule.at$createAction(2, actionGroup);4 c+ K) m- T" f* I
) O& u0 F. V, u- G8 w" P
} catch (Exception e) {( T V+ u! ?* ?$ F' _, |2 A0 H3 N; N
e.printStackTrace(System.err);3 I/ w; b& ^8 T# w' K) W
//System.out.println(e);; q8 R' a2 r7 h9 O& m9 I: K2 C
System.exit(1);
+ W0 }/ ]; f+ O5 k' a7 Q }
: [; M& q3 S4 r! r& d, ~! h# Q3 G. }" Q# e" Q
0 q- e8 {4 _- W5 }' }
}
- N1 ^* Z, H4 J: y( V# [) U( C5 l: _" z9 E Y. q
private void swarmSetp() {
& A* j: Y n4 _1 P# D list.addLast(new Agent(Id));
- d. q* ^: z+ R' G9 e9 R" _* V* U Id++;
" d; F) F! M4 c) b8 F: w+ @& s: H& X }
" i; r } W( O0 F3 F4 e
3 F ?/ n) f; [. D- G' v$ K public Activity activateIn(Swarm context) {9 Z0 j( X- E+ p$ m7 K& L1 m, ?
super.activateIn(context);# q& \* L u+ ]. ~) e" d
schedule.activateIn(this);9 t1 d% X/ Z( m/ ]' W5 K" \4 H( n
return getActivity();$ ~/ _3 a- v* G1 `. q8 _
}, Q$ ?" T' y9 e& r2 t8 x$ h3 L
) o! c/ W/ p2 v public static void main(String[] args) {
4 [( b- _" Y& N! c' E5 ^8 H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. r. f& R6 t \. l+ m
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); H' A4 c- N( X; G( y& M
swarms.buildObjects();
9 m* a+ q6 z6 n* x) _( \3 O swarms.buildActions();
' O2 O, j1 m8 A swarms.activateIn(null).run();( P% ?) h2 T4 y b- \
}, o+ T1 r; ^2 q. ~( t0 ^% M
, L+ v, `6 O: @- E" ~} |
|