|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
O* N7 z; P E" G( g" O1 y
, h' c" Y+ A% _- `7 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 j+ \! ]. K$ E( i3 e/ V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 N" r. P4 G; Y: a- s
swarm.SignatureNotFoundException
$ k4 w8 ?6 h4 E3 _ V, x at swarm.Selector.<init>(Selector.java:76)
: l& ]$ P+ f* B$ Y7 P) j at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# z) R- x1 h& i! C* ^( S
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 S( c4 J; M$ J- C4 P2 s6 h0 [, j) ?8 C
4 x. w2 E: i+ L) [) ^# Dimport swarm.objectbase.SwarmImpl;
K4 b, Q" M; m+ yimport swarm.objectbase.Swarm;
: e# o S$ v8 h) M( k1 qimport swarm.activity.ScheduleImpl;
U! R! A6 h4 H$ h5 P; F; v7 Fimport swarm.activity.Activity;* k K( C; O6 ?: c
import swarm.activity.ActionGroupImpl;
& e t z% J8 T/ t; U6 limport swarm.collections.ListImpl;
$ p1 n$ z2 ?7 ~import swarm.defobj.Zone;
: P7 L" X9 ^% C% M- A; c. L6 Y1 Ximport swarm.Globals;) G6 S0 g5 F; T
import swarm.Selector;5 J/ {9 E& X3 Q ~7 ]& \
import swarm.activity.ActionGroup; . W; i- ]9 o* f, z: c4 ]
class Agent {
9 R, s# m l. t/ b4 k+ i! B* F* E! Y char id;4 M& b9 s# g) T' ~& J" g1 Q. j
2 w# \% d: s# c
Agent(char id) {2 B( b: i, m: [0 v" }& u& a
this.id = id;
T3 T8 K$ A' c+ T# l V( z }, R0 f( K& }, G0 I8 i: R
3 T6 ]7 H2 Y- }* M" W: B public void agentStep() {5 O/ l) v" l3 t$ F& T2 h
System.out.println(id + ":" + Globals.env.getCurrentTime());) b5 {# ^& |2 |5 U
}1 X1 n/ ^0 X! Q
}
8 x7 w- V1 |8 J6 g3 l6 ^" Q; i
5 T9 W1 j7 t3 E1 M3 r/ Y. G9 upublic class ActionGroupDemo extends SwarmImpl {; f3 `) q8 Q/ k) p' d
ScheduleImpl schedule;& T* t: K5 {! h
ActionGroupImpl actionGroup;
, e, x; x, U. H( o- O4 F4 r: _ ListImpl list;6 M! e- S, `5 ?
char Id = 'a';4 X- _9 W8 S! Y x7 {7 @, L, X
; b/ ~ ~+ H$ @/ h* s1 ]7 d, z
ActionGroupDemo(Zone aZone) {
+ b9 Y% |6 t5 r, H super(aZone);
' T+ ~( C% ~$ r6 P* w list = new ListImpl(aZone);
8 r. J8 ^: s! P7 b" y/ b0 s2 L; r9 M swarmSetp();
$ Q1 Z1 N, ~+ F actionGroup = new ActionGroupImpl(aZone);
. r" H5 y) m6 P schedule = new ScheduleImpl(aZone);3 F! T3 c! r; ~0 S& K
try {' {0 k: c% z u2 U: s# ?5 n7 Y; |) z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
- m2 F* L+ {/ s; |& { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
i# L7 S- i# M- ~! u3 |8 F
# i, `- m4 b! E2 e+ v8 m# @( p3 @. q actionGroup.createActionForEach$message(list, agentSel);
' l) z. l, W$ Z) o* M' u8 ` actionGroup.createActionTo$message(this, swarmSel);
/ A/ }0 u+ x8 U7 K5 ]$ t" {: r schedule.at$createAction(0, actionGroup);; F% S; A8 T( G- y- m
schedule.at$createAction(1, actionGroup);
6 J( l0 w1 N3 f' D0 u U schedule.at$createAction(2, actionGroup);( s$ V" t5 w' O* ?8 q1 n
4 I! J, |$ |1 y3 i6 D6 \ } catch (Exception e) {
1 T" f) `( j: @' Z# t e.printStackTrace(System.err);8 R* d8 `$ v( v: a: `
//System.out.println(e);/ |9 f) D; h( n1 @
System.exit(1);
. W* Q" J1 L# o) ?- N3 l }
2 w: {' K1 V$ ]& h8 K7 G
) { Y- {3 S& M% A8 Q% W9 e6 L; z+ x2 v- I+ M \" m
}
; g( {( c' J9 W+ f' V1 |
4 X$ h& g0 @3 q! K private void swarmSetp() {
) t5 Q/ t/ ~! R+ k list.addLast(new Agent(Id));- P2 w; D! d& h. J
Id++;6 |; K/ {- D" t2 s
}
' y+ A) _0 Y$ q5 x5 o, i1 Z9 w" a4 G' M1 `, y) R) v: C5 t
public Activity activateIn(Swarm context) {# c9 c: Z7 y/ Y; v
super.activateIn(context);
9 m8 g+ B7 W. q0 c, A; m$ q/ w schedule.activateIn(this);
4 Z1 ?, B* r3 m+ y, G return getActivity();
! I! Z( S- ?' p5 C+ N }
3 h- t' u$ f; a' f$ T; [' r& c% j' G5 y) f4 r: l
public static void main(String[] args) {% z2 K/ @, u. j; F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ v+ q- V8 O" y6 B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 G; x. a0 F5 _8 J. `3 b- s swarms.buildObjects();+ I6 i/ L( C9 Y2 q" o8 e
swarms.buildActions();
; r6 A# \* d2 @* P: n0 Q- F swarms.activateIn(null).run();
. W8 a$ K4 l9 l }
! k: Q# ]" R, F( w: [5 W
" z* ~2 r8 I5 d/ H} |
|