|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 ~- }) o5 \7 B& u' E2 f
8 Q4 z V; ^9 j2 M/ n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 U+ @0 g% z, B0 m l" B# C" `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 v" F7 i! {) J6 e$ J
swarm.SignatureNotFoundException
; U* a! h9 ^+ l7 j V at swarm.Selector.<init>(Selector.java:76)
) U8 @$ b1 y/ A) j# G& ^" X+ D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ ]# d7 G1 x# y at ActionGroupDemo.main(ActionGroupDemo.java:67)2 m! z" D$ K5 w
, Z9 t! m7 v e% _
& h0 x8 j& ^# z0 a; E1 }import swarm.objectbase.SwarmImpl;
* ~& N, o. U# ]/ ?import swarm.objectbase.Swarm;
: D* l: v$ E8 g. H* dimport swarm.activity.ScheduleImpl; w1 \/ t" t. ]
import swarm.activity.Activity;) [/ l* L3 C8 Y- H9 H, `& j
import swarm.activity.ActionGroupImpl;) H2 f% F V& l2 m. F
import swarm.collections.ListImpl;; V) _5 i$ e4 z. y( ?9 V
import swarm.defobj.Zone; ' W- P& \; v. m8 g, r: W
import swarm.Globals;, N" \0 N6 k8 p T) X) n
import swarm.Selector;
( r+ x; u' g2 p0 Q. g& mimport swarm.activity.ActionGroup;
- x% }$ ~1 Z" M% `: ^$ kclass Agent { S( i$ U. _( X6 u* B) M0 ^7 J
char id;
) N% ]4 {( U9 t k+ n9 j- C; m/ J$ p. l( t" e0 r2 t Q
Agent(char id) {) l& d( a# b$ m$ E' s
this.id = id; F3 V) u* W+ E+ @7 D
}
/ V$ M; _$ C% `% P; p+ c( _! V- n ~ v$ T; Y
public void agentStep() {; U% h7 O& m+ ^; d
System.out.println(id + ":" + Globals.env.getCurrentTime());
% {5 f' a/ n' b: m" K/ k" Q }
0 y# q+ w X4 s8 Q6 R}# _1 X' i, v! g( i! y. t6 b2 B
: M+ f0 H7 w6 x/ epublic class ActionGroupDemo extends SwarmImpl {
8 v% Z1 H% v h" u0 W4 S9 s ScheduleImpl schedule;
1 ?6 A0 S9 H9 h, O: M$ p ActionGroupImpl actionGroup;
7 Y" h2 e; x0 D% z. C' d8 C ListImpl list;+ O, h6 Y! t1 {! T6 U
char Id = 'a';
: T# [4 n& c) D7 u- P* \+ W* V) E8 a7 o1 Q* L1 y
ActionGroupDemo(Zone aZone) {
% P; h' k$ h3 x8 B) i: ] super(aZone);
- z( S; i& C7 @) ?3 Y! R list = new ListImpl(aZone);
: D# D' X0 `7 _. s$ p- g$ ]. Q swarmSetp();
4 U4 b V* [6 K+ A9 x actionGroup = new ActionGroupImpl(aZone);1 G4 R _' c4 g% f0 A# U7 w4 |' |4 P
schedule = new ScheduleImpl(aZone);$ h% [( T& T6 W6 V6 i/ c0 A1 V
try {) d6 t: L! d8 A+ F: Q: P
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) v$ L* b( |% Z. p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 X1 w1 a& i; a+ n
7 d5 r* _/ h# S
actionGroup.createActionForEach$message(list, agentSel);( j* F: \( v" o1 E9 m7 ]
actionGroup.createActionTo$message(this, swarmSel);( S+ X8 q* U7 ]! _& Q, t
schedule.at$createAction(0, actionGroup);
: T9 G1 Y7 a% N# e* { schedule.at$createAction(1, actionGroup);: h: Y% A+ ?) v9 _
schedule.at$createAction(2, actionGroup);/ R o, G8 U" D/ `$ z
; n- W6 C: p# J0 O* G5 M( d } catch (Exception e) {
; u7 o5 i' k/ b( B$ O8 V9 p) ` e.printStackTrace(System.err); n4 A( \: ]5 Y0 c8 Y6 F0 C
//System.out.println(e);
^1 r' m2 S8 e( |- M, r System.exit(1);6 x' D/ H8 \" M7 ?+ `
}
4 k t; S6 K4 H" i; ^3 k+ @3 z! E& \# L5 d {' ]
5 k! t5 N( S& j- _2 t) @$ }
}9 K5 q' v! V, `
7 O) c5 L; E( P- X$ U2 c private void swarmSetp() {
: [9 P2 U( ?2 j& N2 d' { list.addLast(new Agent(Id));5 O! B) o) n0 t" X
Id++;
% q3 c" O* b2 P8 F( A0 t }
, [3 [' L9 }0 i1 S6 E& S% z2 [. z% e% }$ b3 U1 C/ B# }8 W
public Activity activateIn(Swarm context) {
& n; y; g5 s% n, g% y! v/ p: B super.activateIn(context);) u1 q' s# T1 }5 l* L' T6 \3 \
schedule.activateIn(this);
* c! `, S: a( }& P/ C8 ^2 V return getActivity();2 N$ x# C$ J/ ^) Z! v( g
}
! E, ^) L' a+ [; h4 S) }* |: l4 _; }1 k7 J, E$ \6 j) U
public static void main(String[] args) {4 n# F) \2 ?* y: g" j- A
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 u k3 R9 G3 C& T$ a3 D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 [1 C! r9 R2 U& H7 u5 `! o/ V
swarms.buildObjects();
, B2 r, F4 q( n3 v# n, V swarms.buildActions(); \9 V' m% P: n
swarms.activateIn(null).run();
5 @/ {3 V7 k' Y8 V# @ }
+ `) T, O( X0 L F
( R; x% L( u7 l} |
|