|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; I9 `1 `7 T8 ]3 z. x7 }# h
% u3 e4 ~. ^; v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" r5 C: R" u- n7 d# S' Q! x; O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 m I3 [ [ K' G3 h
swarm.SignatureNotFoundException. `/ e+ U: a" z
at swarm.Selector.<init>(Selector.java:76)
% ]( d. u7 c( C& i at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 q; q3 X5 L$ ]
at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 L: P* B; D4 Z+ s& l$ p
! i% V }, ]* I
+ b+ O7 I# z* C3 j1 Limport swarm.objectbase.SwarmImpl;
) T/ c |* N! Z5 T( }* aimport swarm.objectbase.Swarm;, H2 X0 J2 [# l! {" z& n3 y* Z
import swarm.activity.ScheduleImpl;& Z8 p; \' _/ c" e" N
import swarm.activity.Activity;/ p6 n1 j3 D* u, `, B( v$ z
import swarm.activity.ActionGroupImpl;
& p# `% ]' { Z* a( S7 Simport swarm.collections.ListImpl;
+ D1 z9 p1 ?$ V/ O& qimport swarm.defobj.Zone;
# i, u9 l* D+ f: F: ]import swarm.Globals;8 o H8 S5 J6 ^7 d6 C6 I" @% L
import swarm.Selector;
+ D; P$ a# ?4 cimport swarm.activity.ActionGroup;
) Y3 I$ J! {2 [/ N, {class Agent {
1 m4 K0 o: J1 a* e& Y% z char id;3 P) @% `6 `; I! H" {" I- s
4 Q) q/ E4 D* b
Agent(char id) {1 t; y; y! A2 k! D0 n0 B6 {
this.id = id;
) Z4 T/ ?+ j# T* e1 f }
6 S+ _5 E4 V) }; O
5 x# _, t: t( ]5 x public void agentStep() {
* {# x( ?5 @, j7 G* d- Q4 {8 ` System.out.println(id + ":" + Globals.env.getCurrentTime());+ p* J( b' V4 A) B' Q5 `
}
" X- r" M4 G5 O" O1 K. m}
3 N# b/ f4 r1 z( q, z( Z) l8 d# C' {: g. }+ V
public class ActionGroupDemo extends SwarmImpl {; N. d0 J: X6 @
ScheduleImpl schedule;) W9 c* P2 o1 V8 R& ]
ActionGroupImpl actionGroup;# U" |, s! K! @6 ?3 v' g. j
ListImpl list;
. A7 [+ |/ J/ R' l7 l+ ~# K$ [ char Id = 'a';
8 W& B6 e4 y" k* `8 P R/ A" h8 O7 U' S" h' q) {0 [
ActionGroupDemo(Zone aZone) {- `& _: c' @) ^+ i1 R1 p: @( x
super(aZone);4 @. C$ f3 J' ]5 h: v
list = new ListImpl(aZone);- `7 x" [ |$ Z( \( f
swarmSetp();
# Z$ k% F/ F- G3 j. F/ v! X: a% ? actionGroup = new ActionGroupImpl(aZone);& c2 \4 R y' R" \0 l, h5 U
schedule = new ScheduleImpl(aZone); Y3 s* B7 K+ P5 G* D
try {! x& v2 Y! c; j( J1 r+ E
Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 D) e9 W* D; Q* Z7 O Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 j2 ?1 [, n, A 1 W# I, G" ^% r6 Q) z% e# l
actionGroup.createActionForEach$message(list, agentSel);& f2 [. L' G9 J0 R* ^1 t; L
actionGroup.createActionTo$message(this, swarmSel);# ], l! l/ s2 x! O
schedule.at$createAction(0, actionGroup);
0 U4 }* u* D: Y _" h schedule.at$createAction(1, actionGroup);
0 B% E" v7 S3 U7 ^0 G: C1 L schedule.at$createAction(2, actionGroup);
3 s' [. J2 A: W) @" n+ m0 y) b( @$ ~9 M% m
} catch (Exception e) {- e3 n! d) f" ~2 L% [, ?& f& J
e.printStackTrace(System.err);0 v+ y) ^( j1 B- }
//System.out.println(e);
0 T7 y0 R% C# d7 b System.exit(1);# W6 Y. G/ L1 @( X7 z
}# c" [$ R8 b$ ^2 R: z, { l
+ L+ S5 Y; ^4 Y, e& @% L: {6 n& O; a
( h3 R: P4 g8 M }
- M3 @- i7 e0 M) q' ]! h% w" B8 p8 q7 O
private void swarmSetp() {) ~5 S& i3 l4 d6 ^
list.addLast(new Agent(Id));& j& q3 z) @; ?4 s
Id++;5 j; b( S" Q( r8 t
}3 P2 Y7 Y% z) U9 U
9 w- w! L5 T2 Z public Activity activateIn(Swarm context) {! m9 K5 p: {- {; t, V
super.activateIn(context);: m+ R' t/ N% A2 x3 D- k' q+ t' ?
schedule.activateIn(this);
! r/ c4 X# n3 K( A& c( A+ \! C return getActivity();# }; K/ |9 ?) C) |+ ?
}
. p9 j0 j0 u* V f; q6 W! k( k# G; y2 N% c4 k* i% S, ~
public static void main(String[] args) {$ V7 H7 ?$ F3 e0 K* Q9 U
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" G6 \4 I1 D' o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! X# Z+ S/ n% O/ Y" z9 L
swarms.buildObjects();
8 Y8 ]1 M. j) |2 N! b swarms.buildActions();. f- F6 ~ S3 f. H6 x
swarms.activateIn(null).run();% a4 x' a: z( U. E
}
5 g8 }. |6 e9 k# R( r' o$ C, Z
* b2 d' E. l' g( p+ ?1 }( A} |
|