|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& G& w7 Y: k1 |6 M* l4 @9 D
" j( l) w/ f: E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& L- P) N7 s g t9 t) f, K% c y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ X; N9 I) r: b9 g7 S- J3 t0 Cswarm.SignatureNotFoundException
+ t. f# V0 u) F0 o; | at swarm.Selector.<init>(Selector.java:76)# {' ~* O) y; R; W1 U; O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& n0 B. \) M( l* L9 _% S at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 h9 p% ]" X2 d* g4 ], b
9 j5 B% U& d, Q8 I* [" \8 z9 w) w7 o8 K# r' A% m* b E
import swarm.objectbase.SwarmImpl;8 [+ t" C1 g- S
import swarm.objectbase.Swarm;
- d u/ Z; ~; P0 W. O* wimport swarm.activity.ScheduleImpl;+ X V/ C" y: W0 m" o1 h# K( L
import swarm.activity.Activity;
8 O D0 Q7 c% p6 J- f6 simport swarm.activity.ActionGroupImpl;
. k' ]( B$ `- bimport swarm.collections.ListImpl;
1 F# n( r1 T: r8 h2 ?6 uimport swarm.defobj.Zone;
+ Z) u; D: {! z* G" C1 bimport swarm.Globals;: _ \2 `) G) W$ A8 Q9 f. K
import swarm.Selector;# E# I4 n6 A0 B* }
import swarm.activity.ActionGroup;
* r: e3 m) e$ M- a0 o2 Q- Gclass Agent {
& [4 T1 G3 |' j2 \3 \/ U. `9 J char id;: ]- _$ R' X1 n" L$ G/ m
; } y3 n. N9 K6 U
Agent(char id) {( m, ^: i3 A5 d4 i+ @# P
this.id = id;. e$ m" }% w! y( U9 ~8 J
}' @. V* l& r# u: w+ i6 D2 w" m
0 l# G7 E# [- ~, T: o" |$ o
public void agentStep() {6 X3 i# _; R' P+ y. V- K
System.out.println(id + ":" + Globals.env.getCurrentTime());
; Y/ W( D1 |8 E/ j }3 c% j- r* M9 q! U
}+ l% B, T0 _8 d0 g7 |8 Z$ p+ c
* f- Q3 o( ~. ?- O1 S
public class ActionGroupDemo extends SwarmImpl {
! Y: [- r# c# F0 I# P- H% Z' B ScheduleImpl schedule;
. T& S, k3 V( q* |9 T ActionGroupImpl actionGroup;4 C9 k# P8 F$ Q8 }7 w
ListImpl list;$ `* S: }" W+ ^8 F; N! z! t: x
char Id = 'a';9 D$ H2 a: f' S# a
1 ^* U$ j/ [ J* \) G7 _' q, Y! B ActionGroupDemo(Zone aZone) {# a* `" l5 T( v: |
super(aZone);
0 i3 a, V" s$ h. Q* x3 x! N. z' R; K# { list = new ListImpl(aZone);
$ Q U2 i J7 t# t- L! P9 Y swarmSetp();. m/ z8 i5 @% u* I. E r7 M: C( g, a
actionGroup = new ActionGroupImpl(aZone);$ J9 H0 ?9 x2 k# u" r6 `2 \9 B
schedule = new ScheduleImpl(aZone);
8 E1 r" e0 N. v, O! `* G try {+ [' V' n. l$ ?0 S! z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* i2 t; a& g, e$ V" t. c2 z# {; T/ o Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% E+ Y% t/ |; ]7 A, ^1 V& V/ U/ m
! u ?) F7 z6 I3 g5 Y actionGroup.createActionForEach$message(list, agentSel);+ o" o F- n. K8 c8 q. n P. s
actionGroup.createActionTo$message(this, swarmSel);
/ Z2 w( [6 R7 L6 t. U3 z9 J schedule.at$createAction(0, actionGroup);
( ?+ Z" O" S1 r+ A schedule.at$createAction(1, actionGroup);
( Y: T, ~) N4 e- E" w/ P schedule.at$createAction(2, actionGroup);
) ~6 h% S% i& b# n8 C/ B% Z g# v* a. ? V
} catch (Exception e) {
) I2 |" C4 n6 ^) Q e.printStackTrace(System.err);
9 `/ B8 p i5 j+ y //System.out.println(e);* m4 v: G2 w( H. E
System.exit(1);
: r) q- C: T, S" n }
5 A% _2 m1 U: y- a- V \
! q! q' D# d+ z
/ L ^ k: E: X' Q ?' ?: B m }6 f; Z8 N5 |. _( k d
+ p% ?- p. r7 ?# @+ b: o
private void swarmSetp() {, n2 v$ A& u* m% S/ z$ D2 c
list.addLast(new Agent(Id));1 z0 ]7 m5 N( B
Id++;$ t' h% U: n5 m( a& b
}( Z2 P: b* I, R& p, ~* ]4 e4 f- S
K# f8 _2 r: [+ x: z4 j5 X4 U
public Activity activateIn(Swarm context) {7 Q2 d* D3 F/ {. K1 }$ D( X6 I$ O
super.activateIn(context);
h+ t# ^8 T- L( P schedule.activateIn(this);. ^! u4 C/ Y/ h3 R
return getActivity();
: V" l) q4 e2 g- H: }1 a* o9 T( [9 P }
/ ~8 ^. c, O2 D; \. l8 I! k6 ]0 {+ N+ `4 k4 A9 Q1 T
public static void main(String[] args) {3 X2 d2 W2 G' ^4 n" \. c+ z! j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- H8 G& b, j) b% R( S( q7 r# u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ h( e1 o) D2 h. ~/ U1 N( b swarms.buildObjects();
2 F$ B# K& Y- A8 C; E& a7 Z swarms.buildActions();$ w0 F7 A$ _, s, O6 N
swarms.activateIn(null).run();
e" }* E) j+ g: G4 O: }" R }
0 l9 S- X$ B4 m: v' A4 k1 q$ l9 c& P2 K& s* t5 j
} |
|