|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 l4 T) I. x5 |0 i# H# D/ d1 \: V
: \, p5 M/ a# W+ u* E/ y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 g) P# _0 d4 k8 x5 ^( d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 O9 A4 F1 }+ n. N
swarm.SignatureNotFoundException Y2 H4 t- k5 Y- q
at swarm.Selector.<init>(Selector.java:76)1 K: O( ~3 j. z' {3 R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% J9 \3 V# J7 | }+ ? at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 A* B1 {" S7 E
+ q. X8 j6 `. i" Z8 y) z& {1 Q" j! `' p* x" C" e
import swarm.objectbase.SwarmImpl;
4 l/ g2 X- a: s' Y4 q |import swarm.objectbase.Swarm;
' g' L5 O7 }1 A$ e6 |import swarm.activity.ScheduleImpl;1 v" ~* k% X% ]& d3 [5 T& d3 S- |0 i
import swarm.activity.Activity;5 H; p& Y, d5 v+ o3 r% X: l
import swarm.activity.ActionGroupImpl;
- i; @5 g) F- r/ Uimport swarm.collections.ListImpl;
; G$ D7 B/ B7 {- P# |import swarm.defobj.Zone; : }5 y# f7 Q6 X1 ]0 v
import swarm.Globals;* f. T3 d/ q/ J$ c8 b {
import swarm.Selector;
4 h3 p8 F/ s2 wimport swarm.activity.ActionGroup; 3 e$ R+ ], ^/ [, u
class Agent {
' S+ f$ `, {; Q! A8 a1 ^* \ char id;/ \8 M" ^, N. o! x
& ?% X; [5 @. \& P
Agent(char id) {0 ]3 }' W* z% x
this.id = id;! W, q, T) t% s; C7 c
}5 x" G& ^- \! p
D) S$ J+ x# P; l' u* x public void agentStep() {/ ~& i* ]4 N p# E0 _. F' w
System.out.println(id + ":" + Globals.env.getCurrentTime());
d% u3 f: V) L6 _$ q( i }
" W1 g/ ^1 S0 t& V}
; a) ~1 B7 f6 `' E3 F) e4 D: Q" p- ^, W! Z4 i, B1 q% ?5 Q
public class ActionGroupDemo extends SwarmImpl {3 W8 s9 o/ y: E! ?3 z9 e3 l; V
ScheduleImpl schedule;
1 g+ V2 r7 N: h) C8 I3 d ActionGroupImpl actionGroup;
6 ~2 r* D; Z: p/ M ListImpl list;+ m+ W Q% y3 z! M# @" L
char Id = 'a';8 W. `) q x. [" {6 p7 f
9 }% Y6 d/ A3 R/ g ActionGroupDemo(Zone aZone) {
* s) c9 V/ m9 |' m1 _0 a super(aZone);
5 u- _5 t" |6 S$ l7 K list = new ListImpl(aZone);2 q; F4 z8 a; X- C
swarmSetp();0 m7 U" {! V4 u3 B0 _8 |7 D# q0 m6 A
actionGroup = new ActionGroupImpl(aZone);
7 S3 s. S7 ~: I5 O" g* n6 |3 t6 c schedule = new ScheduleImpl(aZone);$ e L4 K( r8 C9 D" n% v
try {
8 e1 g4 l$ A* J, C1 k1 R/ q Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 C4 h) v" }* u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ r( w' l% a) c7 g% T 6 h7 F) F1 d" b
actionGroup.createActionForEach$message(list, agentSel);9 ], f+ }+ y' s9 m
actionGroup.createActionTo$message(this, swarmSel);
& ]/ `% B4 C. q, ` schedule.at$createAction(0, actionGroup);
) x$ }! _6 T4 N schedule.at$createAction(1, actionGroup);
9 x2 R1 x* V, F* x schedule.at$createAction(2, actionGroup);
* {: V- h$ b4 }
' v' w p4 N' B4 ^/ P6 N( e } catch (Exception e) {
+ ?" ?3 F0 }7 w7 d! s* ]2 H+ K e.printStackTrace(System.err);
7 @7 R7 B N9 D6 | //System.out.println(e);. q: i1 ]" g" G9 O- n6 g3 r/ N
System.exit(1);4 |3 e; J7 N8 X! W& ^( Q9 O8 |
}
8 g3 l' t$ k7 y G7 q# Z5 `) M" u+ ~
% [8 ?6 |! O4 H- L* g# V
1 B H( ^: \$ a: W7 ?4 `8 Z }- r! t, i0 @% n0 Y1 _8 w
& g# s( o6 d: W0 _" t private void swarmSetp() {1 r) U. ^' G9 E! n; x4 A* A
list.addLast(new Agent(Id));1 l1 g$ p' k O& M
Id++;
# [% Y" `7 Y+ R/ w% z2 H }
* q- J" @' C0 c6 D* k8 E. k0 [( s% z( V$ H: J' B' k8 f5 F
public Activity activateIn(Swarm context) {
) u' o9 x' m8 w5 G( s$ k0 ` super.activateIn(context);
9 h& q* R4 e. ~/ O* c8 |$ @# i schedule.activateIn(this);
; T t. n: b8 d( l& l return getActivity();4 P( i! \2 ^& F1 t' n
}1 a; D% V* ]. u' A
" p% U5 K4 z* y; j1 k/ k) ^ public static void main(String[] args) {; W8 O6 N; z7 {; e. v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* f. Q# q% Y% [0 D q! x; g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! R+ g5 a/ z$ e2 V+ w% z5 D8 Z8 v
swarms.buildObjects();
- s' M. G: C) s1 l5 ]0 W4 T swarms.buildActions();7 K E+ |+ `* h6 Z" i+ l: Z
swarms.activateIn(null).run();
! m$ t w* [8 ^5 y7 _7 V5 ]1 b }
# j+ v+ g$ ]% G; K( G
* ^" R; O/ H$ R$ n) h/ R. l+ `: [9 M} |
|