|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 u5 @ E- F6 L0 D& G0 M
+ |3 O) y1 C6 p, ^8 v$ Z1 q( w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# W! i5 Z- y& v3 j. c) O$ w K, A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 Q& v: t4 H# I' M/ g- S9 o
swarm.SignatureNotFoundException
`0 j. @, ?: [9 d' V8 } at swarm.Selector.<init>(Selector.java:76)5 Q. b$ D4 b" o- t E' H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# M/ `9 t; n; ^- \5 L7 o
at ActionGroupDemo.main(ActionGroupDemo.java:67)! ~+ _1 c( O( ^8 t2 X
: Z- }$ U3 t/ i1 |! r: I
' S3 j7 Z% u, s# o1 Qimport swarm.objectbase.SwarmImpl;" `" j& ^' _4 k$ P2 ]: ~
import swarm.objectbase.Swarm;$ S8 ~/ p/ V( x
import swarm.activity.ScheduleImpl;; w" X( p+ A' ~ K
import swarm.activity.Activity;
+ M0 I" Z6 j* x/ L8 limport swarm.activity.ActionGroupImpl;
: ]& p+ i5 _! ?! mimport swarm.collections.ListImpl;) \9 c: v' q1 c" {' W
import swarm.defobj.Zone; 3 H( C& P0 r; e: a
import swarm.Globals;
8 o' o2 W: q% r- G8 O' wimport swarm.Selector; Y/ d3 w1 C$ w3 u
import swarm.activity.ActionGroup;
3 y0 V) g) N- d& _" ?class Agent {
5 Y9 }4 h d5 @+ m- b M* R char id;
$ I% K7 W1 k8 i( H; C* A! u$ T# q
6 _& `4 E* [; @7 c, p4 }/ @. [ Agent(char id) {
0 E0 F% i% M; o! j1 U/ j# z# w this.id = id;
: C: s! r q @) J' C$ \. C }
3 q: B2 }. }0 J$ _
8 y# b+ I" _# Q8 F+ `# j public void agentStep() {
+ l8 W4 i. Q- X" H System.out.println(id + ":" + Globals.env.getCurrentTime());- {3 r& Q$ z: ? Q
}
, Z H' P; y1 l$ o; H! H' @}
, y% k5 Z" s/ _ K e! c3 S9 O# l9 K# L) ~; g
public class ActionGroupDemo extends SwarmImpl {7 Z, ^ d3 E7 X2 U- l; x+ v2 p
ScheduleImpl schedule;- Z6 g4 k, [8 x9 P* j) V7 j
ActionGroupImpl actionGroup;
: t B% D8 Y9 W, U& O4 K1 `! m ListImpl list;' ^% ?6 n9 {. C& [# m V! f& \
char Id = 'a';
. t$ g b' S! j; V* o) p4 B& L
$ l% J! Q+ Q6 j9 x: L I( K X5 I ActionGroupDemo(Zone aZone) {( ?1 t) V7 ~$ X2 `& _8 d! w5 a
super(aZone);
3 I; h+ w" X, E list = new ListImpl(aZone);& X; y% C' r! b" f
swarmSetp();
( ^" O* _; P8 J actionGroup = new ActionGroupImpl(aZone);
; c& G) G5 ^* l schedule = new ScheduleImpl(aZone);
: i* h' U( N$ x, T try {
2 w) X( N+ i) u$ @% e) ]/ k Selector agentSel = new Selector(Agent.class, "agentStep", false);
; ^- p! u% L4 d) ^) p# K2 o Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: Z. u& o/ l3 ?! Z+ W# D 4 V0 _: X4 Z8 ^) ]( h' u2 P* K
actionGroup.createActionForEach$message(list, agentSel);! a3 I# \3 e0 B' g% \3 [: G" t5 M" W
actionGroup.createActionTo$message(this, swarmSel);6 O9 o0 L: v' ^$ @+ `* @
schedule.at$createAction(0, actionGroup);# s" w2 N" K- \
schedule.at$createAction(1, actionGroup);
3 k6 l) G6 \; }6 \+ L. z schedule.at$createAction(2, actionGroup);! k/ f7 d# p0 B/ z: V: x' u
v7 c8 S X2 {2 D8 Y6 O% H$ ` } catch (Exception e) {4 g5 c1 Z* d1 B4 Y) K# R2 S" P
e.printStackTrace(System.err);
( q; C |2 p4 G0 q. N0 F //System.out.println(e);8 {; Z( r% [# W% q9 w. K$ n
System.exit(1);
& o% J9 M y8 q5 u6 @8 h# B" @ }" U4 Q& W; |0 S! z
. P. a6 u( F+ Q, G, A
# Y0 q8 Z) H& ]* b2 A6 Q }
( F6 v* ]; J- ~+ |+ V6 T2 J- r, C0 N, T# x; z! h0 ?; h
private void swarmSetp() {
" u' }" A/ y! E9 o list.addLast(new Agent(Id));6 v2 _9 Y( W$ g- i4 y7 Y) P
Id++;- K' T) z9 ~0 u
}, Z) X, W8 Y; I1 L
' V# c8 l( ^+ f: L public Activity activateIn(Swarm context) {' [) F2 f' Q1 z- ?* U( N' I
super.activateIn(context);
$ X5 _) d% T2 v7 s) d4 k schedule.activateIn(this);% _. T+ M$ A' [/ }! Q
return getActivity();
4 e7 H3 m" E9 ] }* s' @: Q7 u* @! W) s
1 M, s( _+ }; V! N% [' f; F public static void main(String[] args) {+ u/ g8 R* s# e' t" E; |/ N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 q. Q' s; j; ^" }# I- t u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ^6 k2 ?& g0 R! V- Y
swarms.buildObjects();
. y/ [' [; C% A( A1 X+ k: F swarms.buildActions();$ I8 z" ^% [ L+ Y. C# y+ G) \, h
swarms.activateIn(null).run();% F9 u. k( V6 h' ]" @- @
}
0 {3 f; j! }$ s5 v8 Q: t; s( }% M8 K$ V; F a, u& }( m
} |
|