|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ U# }, X H) e3 @7 R" [. h ^/ U, f: m; N+ K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ S- A( Q/ |6 r0 \3 Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- D5 F+ [% m; x+ o) N" F3 rswarm.SignatureNotFoundException9 x- r6 V; X$ P, x; s* R; {
at swarm.Selector.<init>(Selector.java:76)
6 L3 B1 ]5 J% v6 ], X, d at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' C% l% z* `! u3 G6 A4 x* m
at ActionGroupDemo.main(ActionGroupDemo.java:67)$ A$ R" {8 b h6 e( ?+ z0 u
3 h1 }1 S, A$ T' f8 b
) o& O' G' g+ O' O+ F: Timport swarm.objectbase.SwarmImpl;0 D u" ^/ R: I* G. j
import swarm.objectbase.Swarm;
8 F% t _5 ~7 i$ S$ j, X+ cimport swarm.activity.ScheduleImpl;
/ x4 h# C8 T& gimport swarm.activity.Activity;1 u7 D+ w6 ^$ C$ ^% q
import swarm.activity.ActionGroupImpl;
& g. T- I E- b' B. e( r8 timport swarm.collections.ListImpl;
% j+ o; M) i8 ]: ^import swarm.defobj.Zone;
/ [( L& y9 \+ f4 \2 x0 Himport swarm.Globals;" b K {: s4 v: {
import swarm.Selector;
4 f; W! {+ I" Z7 pimport swarm.activity.ActionGroup; ! A; g$ Z$ Z. b! `
class Agent {) B$ V9 ^/ O, y8 Y6 Z; b: K
char id;5 j( L7 c' X' g% L* B
, b# V- o1 P, u1 W' ]+ Z' N Agent(char id) {0 Y# m! {' V7 p: U
this.id = id;. K2 Y/ c! ]( e% ]4 }: [/ l
}
8 ?. x4 N& ~" _5 k0 P4 R7 X3 ` I3 L) r( Q2 l! @2 j: K
public void agentStep() {7 L9 `. e# h/ s% f8 d
System.out.println(id + ":" + Globals.env.getCurrentTime());7 a7 J7 `6 A! A: t! Q
}
& h+ `. n; W/ i}. J1 v) }6 x( |. `/ x5 j; F
; v0 h6 x" S0 ]( I
public class ActionGroupDemo extends SwarmImpl {" w! x7 }+ ~) w1 Y
ScheduleImpl schedule;* E) T$ [2 c) ?; @" \8 a
ActionGroupImpl actionGroup;
* j( ?# I' G8 T2 ?* Z, t ListImpl list;
4 c9 T& i8 x; o+ | char Id = 'a';
1 q, F2 O: ~, v, h* J
C8 k. P3 \0 t ActionGroupDemo(Zone aZone) {
' W5 P9 H0 c+ Y0 [ super(aZone);
s) v$ ?: s2 F9 k! E0 {) Q list = new ListImpl(aZone);8 q$ L% N1 e: x( ?5 q' g; E% l
swarmSetp();- T6 x# ~; C1 \2 A6 {9 W& ?, B
actionGroup = new ActionGroupImpl(aZone);; T2 ~: A8 G% [6 q& Y1 k( M
schedule = new ScheduleImpl(aZone);
2 M& P' A p! ^% f7 `. H try {/ w% M& ^: t. L+ p$ z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 E% o. t1 |1 _3 Q, V) Y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) {7 j, B& U5 |1 q3 x+ r# v8 X, N
! c8 n- K) n6 J. s/ O# y3 s
actionGroup.createActionForEach$message(list, agentSel); R9 t, R6 e6 z. G* @$ y- p
actionGroup.createActionTo$message(this, swarmSel);6 l" p+ |+ ]: t) [( v
schedule.at$createAction(0, actionGroup);
# f2 J) y! N" A) D8 k8 U8 m% p' U+ l schedule.at$createAction(1, actionGroup);
0 H4 F/ R2 ?9 i) B2 l schedule.at$createAction(2, actionGroup);
' w" {5 `0 d/ z; g2 U; E3 w2 O# y/ m7 X6 k% Y5 X
} catch (Exception e) {
2 o! A* F( `1 c e.printStackTrace(System.err);+ H9 A4 V m, \
//System.out.println(e);% i) W) |/ ]6 F
System.exit(1);
6 w; I- K" e/ r, ^* q }) w0 v1 T; w* t F8 {6 H9 ^2 b
! S/ W5 A" @! ]( [9 A
; u8 l8 S# ^' y+ w4 P. A( e }- J# U0 y; B, ~. o' ?/ v
0 W8 _! u% l0 G/ n, K* W6 z/ S
private void swarmSetp() {) o" [+ M3 m6 ~6 Q* Z' y
list.addLast(new Agent(Id));9 U Y4 P6 d+ D7 e! l. f
Id++;1 H$ r0 k( D# U
}
' G+ J9 G( X# a+ t
* S4 Q( e- O4 S+ T/ } public Activity activateIn(Swarm context) {
2 K* A, p9 x6 x; S% d9 `& K super.activateIn(context);/ u; H; p( z, U! o3 W
schedule.activateIn(this);2 d1 F' _$ V# {% K% _' p: U8 Q
return getActivity();
& u; A$ n. J9 h }' g* ~' u* C8 f+ U
" J7 B9 k, M; T% Y; c
public static void main(String[] args) {
" b( T) s E: R Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 ?9 b, H% e( k" _- M ?6 n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 e3 B. `; z D* }- [: [
swarms.buildObjects();' W) }. i/ a% f- l0 N$ F8 ]+ j! J
swarms.buildActions();
& J3 x3 g1 z, X+ V { swarms.activateIn(null).run(); i9 g8 X5 S- u1 J9 a2 c
}' |' P; f% j& ?" g5 _# g1 z
! ], X& o8 Q+ {0 L; f+ k9 J. q( R
} |
|