|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / [' J- i7 M$ h* I0 N4 ~/ ]
( ~/ W" y& V: |& g9 v9 O! A( {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: d7 P: b: y4 V- W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! z: g$ o' M# O8 q1 c
swarm.SignatureNotFoundException
: j% l5 J0 ~2 H at swarm.Selector.<init>(Selector.java:76)0 l" Z; g6 k; O+ ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! i7 R1 p2 g9 S, {8 [) r0 D at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 c& W3 M/ L5 d' ? z
2 S. l7 Z* S; q# B% @. }8 g3 E) i$ o( O8 s" J
import swarm.objectbase.SwarmImpl;0 T* U4 j: M% n
import swarm.objectbase.Swarm;
/ N1 N! t5 z# _: Rimport swarm.activity.ScheduleImpl;
8 Z8 G/ m8 ^& g* s% O/ ]: ]import swarm.activity.Activity;, |( {* h; H' E% r7 I
import swarm.activity.ActionGroupImpl;; k; T9 L, {3 o. p" l* ]
import swarm.collections.ListImpl;) _6 q6 k Q' N7 c/ E) S
import swarm.defobj.Zone;
6 N- E! u$ Z) p: ~3 jimport swarm.Globals;1 W& }: M; }) t9 N7 B5 t: S( y
import swarm.Selector;7 ^* A9 @1 C$ p4 O3 x0 h4 j
import swarm.activity.ActionGroup; 0 e2 L6 l$ j8 O1 K
class Agent {9 ], K. `. f7 z# ? x* k7 d
char id;
$ J4 B/ e5 q) h) q: ?& o# i# ?( l0 `3 P
Agent(char id) {
. c! p2 v1 M- W this.id = id;/ ~9 K7 p9 c0 }7 ?
}
3 E- {' m ~+ Z9 X! D$ M" a5 N, m
4 }" {0 e; c( i2 m! d$ K& h# U public void agentStep() {& G/ r2 v+ c, H& l# J: M
System.out.println(id + ":" + Globals.env.getCurrentTime());
. o6 s. ^3 Y9 O1 l }
1 ]8 p& o3 Y/ z$ G9 Q9 L}0 B! x2 c" N8 }
9 {$ ~0 B1 d+ n8 D/ h, ]4 W5 G
public class ActionGroupDemo extends SwarmImpl {
4 N3 b) R* ?! b$ e) {3 S' ~ ScheduleImpl schedule;
5 S/ T" a% W: B y3 `. J; P: A3 e ActionGroupImpl actionGroup;
% }0 _0 S% b+ r" V ListImpl list;; K# Q! x8 L1 C
char Id = 'a';
0 Z l2 M. l4 b
% p' j! `" ~ Y5 y3 I1 o ActionGroupDemo(Zone aZone) {
6 e9 H2 R" E2 o' b super(aZone);4 ~' a! |, y- J" o
list = new ListImpl(aZone);
8 y" o# n) I0 Y swarmSetp();7 \' k# J o: |# I( Y- E8 u+ c% O
actionGroup = new ActionGroupImpl(aZone); b) |& V! v$ r! D
schedule = new ScheduleImpl(aZone);
0 {+ A8 \% H- E+ A3 ]) R0 P try {, K: D _; v0 b( }
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 u- ^% g1 ^* Q& l9 y n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# @7 ]9 ^/ a* k
7 w5 K7 k9 t. K- ]; c actionGroup.createActionForEach$message(list, agentSel);
+ @+ G9 U7 y& w6 p7 D; j$ u' J$ i( W actionGroup.createActionTo$message(this, swarmSel);6 d3 c: k* g' {0 ]0 w) V
schedule.at$createAction(0, actionGroup);) U( [+ c5 }4 K
schedule.at$createAction(1, actionGroup);
0 Y* S# P+ O5 _8 }6 h schedule.at$createAction(2, actionGroup);. |+ i0 Q) z! O \6 y2 w" b
+ M$ I6 I2 i" M; _1 {, @2 ~% `
} catch (Exception e) {
6 ^. w6 E# e- q1 m e.printStackTrace(System.err);
2 P# [) Y4 t- x6 X( k3 c+ U //System.out.println(e);
0 q6 E! u/ O4 |$ L1 R System.exit(1);. b6 M0 n- S, J8 K5 w/ g1 j2 p
}
0 o/ r! u% r4 y0 h
# _( A* y/ j" a9 }1 o' e) h9 c3 W9 T; t2 b: l' H" ?
}: D" f. `3 E2 C- N
! |$ q3 o4 k# ]2 h
private void swarmSetp() {
: w" o4 F" ?1 x9 M list.addLast(new Agent(Id));: F' c0 a0 q+ A$ q, q8 X
Id++;% l j0 a8 j2 ^# a% ]7 [! P
}
3 W5 X7 E, {8 j3 \- v
$ O5 P- b6 m5 Z public Activity activateIn(Swarm context) {
8 O2 ^3 m+ j1 q* a5 G* j super.activateIn(context);5 M9 [# x0 H2 H+ V! g
schedule.activateIn(this);
/ f2 Q# d4 c& ^3 U2 T r return getActivity();7 s) ?4 W" o* O' I1 x
}6 t* `, v% \: W& s" A9 K" S
; |) G4 C' L! `$ l
public static void main(String[] args) {. u& D; m2 p6 A9 l0 W6 Z9 `7 P: k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" B& }- c! K5 J6 C' k9 U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 _1 U# u" _* ~8 a% P swarms.buildObjects();' e/ s( ]" L7 z+ v* N
swarms.buildActions();
+ H/ u- z- A- n9 d; e swarms.activateIn(null).run();
. w% q7 n" S2 V0 T }
& \$ g3 P% U* z1 x% y# D" j+ O1 q- T, g2 p8 S7 c3 g' C! {; J R
} |
|