|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
x0 ^" V2 \& _6 D4 C% f9 A/ E4 K( J- ?- `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 m- s( [* q: J! t# ^2 s! Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 R! r1 a- M5 B, [# M7 Q/ L
swarm.SignatureNotFoundException
& V' G, K5 T; U1 S, B# z6 ` at swarm.Selector.<init>(Selector.java:76)
2 Y7 w S! B+ e$ L; O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& D) T& h: M Q+ F! z( B& D' ? at ActionGroupDemo.main(ActionGroupDemo.java:67)! K# D( o; t6 h3 W
3 n5 p+ H V; Q+ w- x0 S: M1 w
. R1 K ^# d+ z
import swarm.objectbase.SwarmImpl;
7 {- m/ G) n3 ]' S# [1 K! ]import swarm.objectbase.Swarm;2 Z! g9 H0 m2 }& `9 u
import swarm.activity.ScheduleImpl;1 f1 c/ O# g6 u3 m8 z
import swarm.activity.Activity;
( D% v. Z9 ]3 y2 m8 fimport swarm.activity.ActionGroupImpl;+ H. r3 r8 M5 d+ _- o# X
import swarm.collections.ListImpl;
: u. c- b+ H" z6 E6 d" Dimport swarm.defobj.Zone;
2 q- S) l$ P8 g+ D8 p- @5 Mimport swarm.Globals;
+ `' ?0 `! l9 L0 Y5 `9 timport swarm.Selector;
5 A6 h2 F; }, K9 P4 S( R1 V2 dimport swarm.activity.ActionGroup;
) k7 H$ n, O" l9 |: p- x; Uclass Agent {
- R# F, o+ k; k- `/ @3 ] char id;
7 H1 X) p# \% z, ~ F) M
7 r) \( F' J6 t1 g4 a; v Agent(char id) {
L. w: t1 |! m, i6 E x this.id = id;4 Y+ Q5 m& g; R2 o( F
}$ }) U/ H+ Q: t% L
: a8 Y' [! a. I, G3 U( E8 L public void agentStep() { f3 [ N4 ~' z! G
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 F$ s; ?( j& w+ N }
9 Y5 U% f! Q& R0 Z+ L/ E}0 I' M; ~9 e" Z: b! o
- x, v1 ?! t, ]- J- k
public class ActionGroupDemo extends SwarmImpl {
* K6 e; L% P6 i- z- ^; L8 q; n ScheduleImpl schedule;
, B$ m: n& g) ]) r: \, g3 `8 {6 K ActionGroupImpl actionGroup;
, i$ e, F8 X# @2 O0 ` ListImpl list;
7 N; P6 \5 c; D8 Q1 F% ?+ n char Id = 'a';
4 O8 ^. ^ M* E; M w+ A! F& b
ActionGroupDemo(Zone aZone) {
% n0 V5 [; @4 p: w: U0 L super(aZone);
( S4 }; J9 l* v* z% }# P6 { list = new ListImpl(aZone);) b# `' J7 ~3 A
swarmSetp();; a h7 H/ x5 L: W$ w) A
actionGroup = new ActionGroupImpl(aZone);7 G; S) e8 g1 L& ~$ X8 w# x
schedule = new ScheduleImpl(aZone);
& t$ y% X$ R" i/ L+ N try {
* E$ g m3 W* C2 S! C3 ~1 m Selector agentSel = new Selector(Agent.class, "agentStep", false);- E3 a2 y$ B4 U; g
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 c" a- [ r3 f1 U$ G2 x
L9 U0 c0 e8 c: {& S1 ]( W actionGroup.createActionForEach$message(list, agentSel);
$ A* L9 J; @. V5 u1 Z actionGroup.createActionTo$message(this, swarmSel);
7 u2 Q9 i: I3 H$ s! t$ f8 f. d schedule.at$createAction(0, actionGroup);6 u) b) Y. h- v5 P4 c2 F# Z1 s
schedule.at$createAction(1, actionGroup);3 l9 ]1 L& J3 ~* @
schedule.at$createAction(2, actionGroup);) p4 |& i/ m7 _- ?7 a
& ?9 P: Z( e; {, w } catch (Exception e) {. `. I- Y. r# Y M& e+ }
e.printStackTrace(System.err);
0 W8 J8 {; X# o: E$ r //System.out.println(e);
: P5 ^- F7 r7 b System.exit(1); R: T/ \. z3 P3 M. G6 X* D+ Q- v
}
0 O) ?# v7 i, C1 y% c7 \1 e) y3 m" }4 V; k
, K- P& B+ n& ^8 ^, |: n6 H3 c }
% ~2 j" ]$ y& M& @8 X0 O+ I/ X6 H8 \4 y& [
private void swarmSetp() {) _9 ]$ |: ~8 ^$ ]- a" c% T
list.addLast(new Agent(Id));
: y' j# c" M+ v8 n6 x1 M3 t) i8 e" M Id++;
2 V. Q0 V; l. {; r. S }0 c& W' \: |2 j) c0 j
& Y( w8 H' c+ t$ Z) v; @* h public Activity activateIn(Swarm context) {
% L- U; @$ k! x" l O3 a super.activateIn(context);
/ [4 J" ~' y- I0 V: U: O schedule.activateIn(this);
6 P' P4 l4 T% p; r* e return getActivity();( }% H$ k* \7 w z% d
}. }7 ~$ `2 [1 g% |' X/ ]
: W1 K+ I1 U5 q5 l& E
public static void main(String[] args) {
3 J4 }, _7 c- L& } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% k1 \7 H6 v9 b- x4 @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 ~% F9 B; W- A% A
swarms.buildObjects();1 p0 t$ B5 n, _. L' _0 w
swarms.buildActions();
8 ^3 S6 T2 O3 Y5 \ swarms.activateIn(null).run();& ?3 {: a6 S4 O( f5 b
}
# a4 k( D$ s/ u6 X; v! d T0 x8 V
} |
|