|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % K- r6 I2 d* y' L
4 d% G( F- z- I1 C2 I& l% ]- g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# I% ?7 c% `2 a2 e0 {# \! l% p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 ]3 h& C+ O) z: X) w1 ]7 t, yswarm.SignatureNotFoundException
7 t5 L9 x2 V! e at swarm.Selector.<init>(Selector.java:76)/ R m s- g' T& [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- ^* |9 Z, a2 g+ U; f# J$ b
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# n$ P, _0 Q) f X" C4 u
( h8 a5 o% d4 k, V' h( q
* \" c( Y6 U) }import swarm.objectbase.SwarmImpl;5 M7 Z s* `; f
import swarm.objectbase.Swarm;
, {8 S9 n' z) [: ^import swarm.activity.ScheduleImpl;6 G* B/ V) }% h2 H( u
import swarm.activity.Activity;
5 q/ ]4 O T( H' A* ~7 d. E) ~/ Nimport swarm.activity.ActionGroupImpl;; u E7 X" V Q z4 K; O
import swarm.collections.ListImpl;
4 Y. R, B4 Y( h$ A: F* ximport swarm.defobj.Zone; * D) A2 O4 n7 x! G7 @, x. p! G
import swarm.Globals;# D+ n8 x7 w$ ~
import swarm.Selector;
7 ?) P/ J, C% m) Kimport swarm.activity.ActionGroup;
& p8 p9 q7 ?' n- L% i4 N, {class Agent {8 {' l% X0 l' X% s. k( ?
char id;
+ k; U8 _2 W& y" ]
" t6 Z8 k, l! c$ a" Q { Agent(char id) { \3 }1 h+ ~5 G
this.id = id;
5 e0 ^9 W0 u9 `: T( n0 `% B }
7 X# c' H2 H; U: }# U* X' ~ ~/ ~( }# x
public void agentStep() {3 H5 b `* J& u0 N" X" H M; K
System.out.println(id + ":" + Globals.env.getCurrentTime());
& y0 _& ]6 ^; K }
) J, m6 m% `; e" C' P. `: F# y}
" o7 b4 r/ y* f9 n9 q, \9 d/ G
$ d! ^7 ~, V# W6 Ppublic class ActionGroupDemo extends SwarmImpl {: {2 z0 A; f' v& C, Z/ z# u
ScheduleImpl schedule;
; K6 Z* C# C- y0 f6 d! ] ActionGroupImpl actionGroup;1 d; ?$ d B' G% @- @
ListImpl list;! g8 O- M0 i$ t! F" K1 g6 n6 U7 ^
char Id = 'a';5 R m) e/ N+ B
* k! y$ B1 h. R6 d
ActionGroupDemo(Zone aZone) {
/ B, F3 {/ t0 s& S super(aZone);: X( H e3 J$ A" ? A: C% e& g4 ^6 G
list = new ListImpl(aZone);! ~# d/ a, W7 o' X4 I
swarmSetp();
" n/ @# `; N/ ] actionGroup = new ActionGroupImpl(aZone);
2 T6 X; F3 X& o2 H4 I, R% _ schedule = new ScheduleImpl(aZone);) l& X7 I$ v, `$ h2 v- d9 I/ C6 J
try {; Q0 l L9 I/ \+ N1 O' R
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 k0 N2 B& L7 g5 y0 J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 y' P! J: ? W. D, s8 Z
( k4 S# n- w6 _: g+ w actionGroup.createActionForEach$message(list, agentSel);0 C7 X. N6 ` Y% d. b" E1 f
actionGroup.createActionTo$message(this, swarmSel);
8 L( \" M/ U6 K) _3 [ schedule.at$createAction(0, actionGroup); Z3 z0 |, N% R# X1 A4 m
schedule.at$createAction(1, actionGroup);
- B: {$ b$ y5 s5 Z" u4 ?! i$ A schedule.at$createAction(2, actionGroup);1 \6 ~# u* i" I$ T$ }
! b: }$ V+ h8 g* r+ \4 I } catch (Exception e) {
! v) |. `/ u; q' O, J' E8 M: S! I e.printStackTrace(System.err);
l, _: n2 W# I //System.out.println(e);: z. Y2 r3 v2 i& A5 G
System.exit(1);& d- r' t( C+ i* n* e' \+ n5 T4 n2 e% F
}
$ P$ d% C6 O/ |
1 s6 G0 B* \9 |" ]8 n/ r, z- ?6 K1 X8 ?6 e. H& o
}
$ o1 Y+ q' n" K8 B6 o R5 u0 ]$ }6 j0 w0 W
private void swarmSetp() {
; t+ v4 c4 P, }5 ^5 R+ u, v* h list.addLast(new Agent(Id));9 Q- U" G- F) a& q1 ^: H* d2 z
Id++;! Q6 j$ L1 W8 I5 D+ _( C4 O% A0 ~1 K. a
}
( ^/ K( x+ T5 u' D% X& b
9 I* K+ \: P% d public Activity activateIn(Swarm context) {
: U; o$ X: i) d# E/ J. U super.activateIn(context);. N; u* P! v: f+ @% o
schedule.activateIn(this);
" Y% h% K4 ~3 U2 M1 j5 r9 z return getActivity();3 r# `! C% E. @- `2 L
}; J1 b" t. r6 S( G$ |' e, t
; R/ M" ^, k* q8 O3 M0 a h
public static void main(String[] args) {2 o2 _' ] |* T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 B, _, y. l+ y/ L+ w! y+ O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- ?" U5 P$ ` M4 Y
swarms.buildObjects();6 D" Y3 E' E5 A, K
swarms.buildActions();
' u9 x: E5 i) A9 L9 r0 ~ swarms.activateIn(null).run();
9 d5 _. \( x4 v! B: m, ^+ t3 a }
5 V5 B: j1 Y4 {& G2 ]! w8 Y7 ?) k1 C% S5 [
} |
|