|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ G# f* }/ l" U
) p! f; O0 G2 s. m" s0 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) @- k$ \$ W2 Z" D8 e7 }, @9 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 _; u5 L- S6 C4 Q F
swarm.SignatureNotFoundException) q, R# W, ~7 x3 R; i% S4 V" |6 w- [
at swarm.Selector.<init>(Selector.java:76)" m' B2 m/ i7 k" R9 \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! E L" I4 P/ J# _, F at ActionGroupDemo.main(ActionGroupDemo.java:67), B. }( A A$ }6 j- c% R
% e7 f! K& H, A- C7 f( t5 T+ Q) a; n7 j1 N
import swarm.objectbase.SwarmImpl;+ Y u% J) g5 s% D. j# z+ X
import swarm.objectbase.Swarm;
* D' |: a3 B" Zimport swarm.activity.ScheduleImpl; q: E( U1 L0 _5 r; `# G
import swarm.activity.Activity;
3 v% O- o" U( v0 L. d$ V1 k6 Eimport swarm.activity.ActionGroupImpl;
; s- a. G+ g5 e F, yimport swarm.collections.ListImpl;
, S4 X6 }6 u3 {, u3 nimport swarm.defobj.Zone; c5 l' T* z( C3 c% u' [& r
import swarm.Globals;
! E \& Y1 |4 X: e0 g6 |import swarm.Selector;
6 `0 @8 e5 j. i x9 @ @( Rimport swarm.activity.ActionGroup; 7 S+ E7 L5 c. S$ h& p
class Agent {+ L/ Z( h4 k4 C8 G T2 e
char id;
+ B5 w- o6 H8 b7 s$ m
' f2 |0 Z+ R% ~$ E Agent(char id) {; ` a K) l, y8 X
this.id = id;
8 y6 p8 W9 y( q% S" h( L4 I }
/ f) n& c* U, w, c5 j, j8 v
$ V1 Z% k# R7 j0 [0 G! Q* g public void agentStep() {
1 f( _8 O8 E) E0 R! |# h, ?7 V System.out.println(id + ":" + Globals.env.getCurrentTime());' z. _7 i( S5 ]% a
}( `# B$ a: H* W- H5 u, g
}
4 X& F8 `% o" p! S! E/ A& F
& C( |) M# f+ x/ P' |public class ActionGroupDemo extends SwarmImpl {
" E2 p9 h) l7 W! d; ~2 k) P" d ScheduleImpl schedule;
- J, v& z7 _" L! G! R: t ActionGroupImpl actionGroup;
# ~! d" J1 l3 N ListImpl list;: |, I0 H0 a: w c$ k8 ^# p- `& ~# J
char Id = 'a'; u1 w' [4 k% B3 p; T" }
+ P; r! u" q2 P9 r E2 E) } ActionGroupDemo(Zone aZone) {
6 t$ ^3 p- I/ d; p3 e6 T7 p9 j super(aZone);) r% n- Q9 d: V V
list = new ListImpl(aZone);
$ J/ ?3 ^; b8 K4 N! v swarmSetp();+ f1 ^2 K) @- X
actionGroup = new ActionGroupImpl(aZone);; L$ o# T* E; }) I2 e, j/ Z" ^7 |
schedule = new ScheduleImpl(aZone);
1 G) P9 D E& r3 @( A G4 ~! ?/ g try {
6 M. X/ ?4 G' t! z7 P+ B- @ Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 w; Z3 o& d+ R8 V0 P* J Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ F6 ^+ D u3 V) @- B W# ~: k
, ?$ X8 p+ `' f% p actionGroup.createActionForEach$message(list, agentSel);8 Y7 ?; s, M u# o) [
actionGroup.createActionTo$message(this, swarmSel);( V0 `8 r' ?7 `4 B4 y/ L
schedule.at$createAction(0, actionGroup);
* q) N! z$ f# D4 u* Y' M schedule.at$createAction(1, actionGroup);( B; m+ C. S! v3 C6 z5 g0 ]
schedule.at$createAction(2, actionGroup);
% i0 s: ~; D3 n7 O- E3 n8 M0 K2 W7 p$ y q0 r( E, Y
} catch (Exception e) {) O P9 O* M9 |
e.printStackTrace(System.err);
# g: Z0 V8 E& o9 @ X( z //System.out.println(e);1 x5 t0 M, N0 E) N5 Y
System.exit(1);
( o4 p4 t' o, Y% p8 n- @/ R% d" X& p }
( ~/ O7 S; V/ D3 j' k
; s* e4 t, r: T$ u
: Q8 n; @" N2 m5 E9 z! a }
) N% G; q1 g: A6 o7 G) b" J m3 y1 q' V. Q. O
private void swarmSetp() {# C7 c8 k* E5 v, A" L
list.addLast(new Agent(Id));
9 A; ]* A4 G9 Q$ K( a Id++;& G0 K3 H1 [; e9 ^% }4 @
}2 Z. J, U8 P7 z( {: U& L) M7 X5 ?
* b' i: H6 i; G3 {. R5 l
public Activity activateIn(Swarm context) {6 T: U2 Q m! l4 c$ [
super.activateIn(context);$ [ \0 @7 Z. }( O: U
schedule.activateIn(this);6 \9 D8 i9 h/ H7 |5 @
return getActivity();
. y0 p/ n. e8 ^, K% t }, I% b* h% _4 ]/ L+ o: N& v
; H, Z# [) ?: t' a% U! B7 z- o
public static void main(String[] args) {
9 n8 s/ ^3 M. g2 d' ]8 M8 T, ~- p2 K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 x1 W5 u' g7 }7 k- D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 i% y( a, R: ~! n X
swarms.buildObjects();. r- C" F/ t, \6 o" h* r3 t7 W
swarms.buildActions();; [; S* V$ j( l; ~, z4 ~; b F4 F
swarms.activateIn(null).run();
9 L/ C4 V2 O! q+ w: J }
6 f& r6 E- Y {! x
% H0 G0 g6 M) m} |
|