|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' {5 o" F' u$ n' e) W5 u/ b' g2 v1 p! A+ b, H* [. f- u% ^5 z# S* h5 G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. e; O; {- g X0 _( i+ V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* c f" ?+ b a
swarm.SignatureNotFoundException
- \7 U" g3 Q* _$ ]" d& N at swarm.Selector.<init>(Selector.java:76)
6 F# J2 {, w9 h e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; _4 W' D5 d3 u' B+ V) P at ActionGroupDemo.main(ActionGroupDemo.java:67)& [9 G0 P6 q( h7 z
# \. c+ h7 I6 E/ @8 E x! s D! L1 e) J9 E
import swarm.objectbase.SwarmImpl;3 q d l' Q1 q% Y P( m
import swarm.objectbase.Swarm;
/ Y) Y) r0 S3 z% w* Z9 ^) Yimport swarm.activity.ScheduleImpl;
1 @. j( W, Y% o$ v) J5 w Timport swarm.activity.Activity;- Y3 m8 L9 A: j9 ]+ p, d
import swarm.activity.ActionGroupImpl;
6 x I6 A& p* }4 U! w( simport swarm.collections.ListImpl;
( ~+ T% P% t6 zimport swarm.defobj.Zone; T d' Y! Z+ ~! L5 @ ?' h
import swarm.Globals;
9 c6 V( ~( n/ j" i: O8 Pimport swarm.Selector;
1 l/ e! v* }& Z, v8 P# B2 dimport swarm.activity.ActionGroup; 4 U8 M- E/ W3 i
class Agent {8 q4 C& y8 B- m+ m+ Y; }3 c
char id;
3 H, ?. g+ T. v! @4 T. K$ C7 u& c' d2 V7 q7 e" k$ K9 q2 o( e
Agent(char id) {, d. L2 k/ M% ]! [, I3 M d: u- h
this.id = id;! E1 t* j% T1 M- Y: b5 X1 H! Q* M
}3 J) V! V7 k# e) x' S
$ Y! B9 ~, x' M* _8 X public void agentStep() {9 ]1 z; z" X f/ \
System.out.println(id + ":" + Globals.env.getCurrentTime());) ]) a! Z7 L! R( ?3 _8 u9 C
}
% G. h: S) K8 J% q}
5 m5 U+ w* h1 n* H9 q' d
1 A0 q7 ~) u* }# _3 ?/ ipublic class ActionGroupDemo extends SwarmImpl {1 P" `* P* k) y R0 `' W
ScheduleImpl schedule;
3 M* W. n; P! s9 v$ s5 X ActionGroupImpl actionGroup;
; C8 ?, f* i% V% b: s5 | ListImpl list;0 s+ B; A: l7 A) ~( u
char Id = 'a';: T* D, v6 L0 a- B: J
" s7 S' q' y! `" a4 r& p
ActionGroupDemo(Zone aZone) {
# P5 _5 T3 }+ O3 O$ q& P9 V9 X super(aZone);9 K9 _/ N% v: G; ?4 S
list = new ListImpl(aZone);
5 _' z) m+ z2 G$ I( p9 R6 {, B swarmSetp();
0 M/ K6 {3 [2 I5 r actionGroup = new ActionGroupImpl(aZone);: u' B& [( r: y, M1 r C' @
schedule = new ScheduleImpl(aZone);8 G- `$ }) b. |- j t. r3 ]) j7 H
try {! I0 { d9 e9 H0 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);, H9 `) o( x# k9 s( M+ |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 r& d9 \( p+ Q4 A
1 |" d, s6 \# u( L; m: x actionGroup.createActionForEach$message(list, agentSel);
% ^8 H2 C" O+ o( |0 t actionGroup.createActionTo$message(this, swarmSel);, K, r$ v: c' ^7 J+ }- K9 j# P
schedule.at$createAction(0, actionGroup);
+ B* Q9 ~$ Y8 [ b schedule.at$createAction(1, actionGroup);( r" L/ ?/ `1 Z0 Y$ j$ B' ?
schedule.at$createAction(2, actionGroup);
* }( T6 a3 C; t3 h: o) }0 d# G( f [+ X$ q. n$ q
} catch (Exception e) {
( k8 ]* {' Z& A* A. s e.printStackTrace(System.err);
) ~5 I9 R$ l$ m3 G" y/ u/ O //System.out.println(e);
% _" x1 K& T6 L& @4 q9 F' f$ D8 T3 ~ System.exit(1);7 ~1 o" T8 H7 k! E8 P
}
! M! ?1 a* x" t$ |5 A$ O: f& m, F4 ?" p: r4 _8 g- w
" C) d# U' p* [6 s) `9 s
}5 C, ^* d: x, S+ k
6 D, l/ s0 p( s) j private void swarmSetp() {
5 L! c5 e5 a* }: S/ y, P( J" \ list.addLast(new Agent(Id));
+ P! `# S6 P: W, i6 V Id++;
' } g; p$ a' f8 \. W' `6 g; ^ }
0 f9 ]& c/ k+ u6 g6 v: `
0 r) a/ R6 D8 M% O+ g+ D public Activity activateIn(Swarm context) {
+ B, Y, Y- c: x8 J- U7 g9 I1 ] super.activateIn(context);
# D t: @: X& Z% k* @0 V! j schedule.activateIn(this);5 E2 ]) [2 K3 e6 s4 _9 G* n
return getActivity();/ e% O6 [) ^' M$ d
}
3 {. k- o, V/ j( V0 z" F5 j5 e
X! z* b5 H: W& { public static void main(String[] args) {2 q$ y. h; y+ G6 D& q! b5 ~5 A
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 o. v* G$ O6 `, N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& s1 t4 q9 e4 c6 B swarms.buildObjects();
1 c: x( r0 T$ \ swarms.buildActions();' N6 U% O0 v9 F! D; N" A
swarms.activateIn(null).run();9 U3 @0 A( v# W4 Y3 D: _
}
& p; q7 D) A. F$ f I2 k1 G
" a/ d! P# {* v$ F3 ?: e ^ s} |
|