|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ s9 L9 a+ X# l* n& Z; ?1 O& a5 {$ h; g+ o# }+ Z- h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ Y. `6 i* U$ f, [, p/ ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* c& }3 w7 Q. T: l
swarm.SignatureNotFoundException
& z) G6 N, \0 A# H% G at swarm.Selector.<init>(Selector.java:76)4 Z0 w) c9 `, i% y( }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* ~; P. ]/ u5 V( L( e% k$ D5 ?2 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# n; A9 K0 A+ p" N q! ~
4 h4 ]9 y4 }& R+ N! o3 X. n M2 ^1 t! y- \7 c$ ` s# u( @
import swarm.objectbase.SwarmImpl;
3 P a, }5 E( k7 G9 c; Zimport swarm.objectbase.Swarm;
7 u. f% U$ v! X- k& f9 q9 [import swarm.activity.ScheduleImpl;& Q' C. r/ C( f; s! z. M# Y
import swarm.activity.Activity;& f& G" ?2 u/ Z0 X. Z! L
import swarm.activity.ActionGroupImpl;8 R7 c- @2 o% i1 W0 y0 b
import swarm.collections.ListImpl;* Q) Q0 p0 B0 g5 v' K
import swarm.defobj.Zone; & \8 J% M g: h8 h
import swarm.Globals;
L+ W7 }6 F% M# j* J, d. ]import swarm.Selector;
8 x% B. i7 b* v$ _4 J. j& cimport swarm.activity.ActionGroup; % [# @1 `7 q3 F( a6 z8 w" v! x" t
class Agent {' O7 ~4 p) ?4 d$ @
char id;8 O) z6 H, i9 p ~' ^
3 d- s- E7 ~/ R6 O% _* |# u8 L# Q Agent(char id) {/ u3 F, C9 H( y6 o, d
this.id = id;
% Z% I' O9 B; C' e }& h4 e- ~% Y: z0 y' U
" q9 M; I2 z) p: W. {: r7 W: G1 s' o public void agentStep() {. u9 O0 r" {% L: J
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ T0 n* V# @9 O% ]7 a+ O P }
6 ~0 z B. F) D5 _+ L" P}& R7 o# E. {; z$ p
2 a2 R: Y/ ~" y, ?/ B! m% W
public class ActionGroupDemo extends SwarmImpl {" Q3 d* {8 |6 O% I. {6 b
ScheduleImpl schedule;, _8 q/ W8 l2 |9 p1 b% R
ActionGroupImpl actionGroup;
7 Z: A4 K7 i: I( i' j ListImpl list;6 g+ O1 n; {1 g' p( P' k1 v9 M0 W
char Id = 'a';
0 K$ t' F# E( A3 R! n; x4 y
7 ~* E" M4 L: q: A2 _ ActionGroupDemo(Zone aZone) {: ]; A: V* y( r5 k% U0 a) z1 k
super(aZone);) ~1 W! ^1 f; l2 H# P+ k' s( ~) |
list = new ListImpl(aZone);7 N+ h% s" J3 [* D
swarmSetp();4 ^! t8 |8 z3 u: k G* I
actionGroup = new ActionGroupImpl(aZone);& G/ E9 l' z9 a, R0 T# }0 k: M
schedule = new ScheduleImpl(aZone);
" B8 \* w C: h1 J7 B( L) t try {$ {" r$ c y# G, U% _$ u) L
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ T T% C- ^, E Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. s$ h4 J0 S7 u2 Z5 M0 ~* v/ e3 j; ]
7 J% W2 t: |1 L. [* U$ p3 ]) n
actionGroup.createActionForEach$message(list, agentSel);
' b) ?" \! \7 W/ b. O actionGroup.createActionTo$message(this, swarmSel);
" t' H% \9 d! h schedule.at$createAction(0, actionGroup);
1 z6 n) A6 K4 J6 _8 T9 U3 p8 A* h schedule.at$createAction(1, actionGroup);9 |# v- r7 [) [: d! Y# S
schedule.at$createAction(2, actionGroup);0 n) T4 ?! o9 S. ?* @* o7 O: {
4 k. u, R& ^0 q w; Z! _
} catch (Exception e) {
; [* T0 X$ r# }) v0 { e.printStackTrace(System.err);
8 t$ V; T' z; X0 h$ Q: r+ ?7 Q) j //System.out.println(e);
/ V b& h/ K; H$ B4 P3 b x8 _' @ System.exit(1);/ E- x7 [* X/ d
}" N( g% K, x2 P
% H$ n/ Q5 F$ {4 l. e0 t4 X0 l+ G; b# w' }* ?* d, q3 W
}
( Y$ M' I0 \2 D' w( \% g
( V j' [/ [7 \8 P; M, f private void swarmSetp() {
0 }6 I2 N" l+ F2 U: x; v list.addLast(new Agent(Id));/ b7 L0 I. J' p5 Q& ^
Id++;! t% ~% O ^* w+ D q6 M6 m
} n, \4 B) n9 s N: K3 Q' J0 u
2 U, j1 G% E6 q$ Q2 ^$ Y" @ public Activity activateIn(Swarm context) {; X# }9 g0 i- G( v. {+ t3 n+ l
super.activateIn(context);8 t; i) A \4 I8 p: N" [
schedule.activateIn(this);
- _0 |& B/ L- w* ?+ ]( X return getActivity();, n. N( {5 B9 b0 a
}
8 S$ P! O2 J$ O# l0 _$ K6 \* I: b. J" O" B' D
public static void main(String[] args) {
6 N8 f' K/ s# X5 ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); N7 p+ L- }5 m1 U. {9 v( @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( m5 T* E3 g' j7 \
swarms.buildObjects();
. m: y) {# z+ }) u swarms.buildActions();
5 J% \9 V# d- s* W+ y" H swarms.activateIn(null).run();5 V9 c7 z# B+ S" t" {
}% R& ]: q6 }/ T8 l5 A
2 L! P9 N) k5 m. k1 N} |
|