|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : C7 b2 @9 g6 C3 j3 ^' [5 p+ m
9 h5 F: |% L3 Z! Z2 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 c! N# {/ l/ j# F7 y% k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' P/ H# O# t; H. S) ^# v
swarm.SignatureNotFoundException; V; ]) X& P7 ~
at swarm.Selector.<init>(Selector.java:76)+ t: l9 M& L& V8 I. i' Q' P' H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ J" A. x8 i: }8 P2 T4 K- f- J
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 y: I. d/ O$ _* \% {2 l5 B
4 F. ~8 X8 U' V2 u$ t# ?& m. w3 i% v6 g; l3 ] z( A( j% o) M
import swarm.objectbase.SwarmImpl;
4 e' M5 ~: e5 }1 |0 V3 {) N' |+ o5 [0 Vimport swarm.objectbase.Swarm;
! C1 a; M1 H- u wimport swarm.activity.ScheduleImpl;! h6 L% n2 N( ]+ {3 X+ t6 l
import swarm.activity.Activity;
* R# e/ `, C7 X1 Q1 Bimport swarm.activity.ActionGroupImpl;2 l) e7 h8 q. u' I* a2 }
import swarm.collections.ListImpl;
7 K5 ~* k2 F% i0 c9 Ximport swarm.defobj.Zone;
8 E1 E \3 W7 [- Pimport swarm.Globals;
1 |4 Q# i( s2 e2 P; l' Y5 Ximport swarm.Selector;
, `0 W( j& z1 U% Simport swarm.activity.ActionGroup; ) N8 e7 w. W H `
class Agent {
% C1 G G5 @* i! k char id;
8 g4 G7 B: Z3 v' ], D
: F+ t7 W2 W" K3 i8 n Agent(char id) {
( J3 N, ~$ v ]9 l' O) W4 O: ~ this.id = id;
+ D3 B( z. a4 Z* Y }6 h( A5 C; P" |# e
& k8 ?6 I* U( s/ Z( q0 ~ ~) |* ?
public void agentStep() {
) E* c0 z/ B8 M/ E* r3 ^. y8 ` System.out.println(id + ":" + Globals.env.getCurrentTime());8 Y7 N, l$ X5 e
}/ J" V) c/ ~# J0 v
}4 w9 o# j6 g( K& x
8 A0 }7 e h# u' T, r3 `0 v
public class ActionGroupDemo extends SwarmImpl {0 B' q7 N9 O' L
ScheduleImpl schedule;* ]5 G# [: m M q, [ |3 @
ActionGroupImpl actionGroup;
8 r( g2 Q/ f, i5 Y$ p3 z ListImpl list;* P# Z: \- D& C% f
char Id = 'a';- K2 x# G6 O8 s$ n1 S
# l0 n R/ _0 p k( g8 ~7 i0 J ActionGroupDemo(Zone aZone) {6 V$ c8 R1 n* r. q9 S' q
super(aZone);- J1 B8 f# ?8 q3 q" | b0 o- m
list = new ListImpl(aZone);
2 O* Q. s% a1 t' ^& p% \ swarmSetp();
' M- `3 z! ^3 v9 R9 @# u actionGroup = new ActionGroupImpl(aZone);3 q, r- N; d% c4 ]! p5 S
schedule = new ScheduleImpl(aZone);
& X5 b7 W( X: t6 l try {; Y5 R" ~) W3 t3 l% ?; w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 I3 ]% k3 j# D Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ z6 e" S% n7 O* R6 C5 a9 _
- b+ G+ g6 g) v x r actionGroup.createActionForEach$message(list, agentSel);
9 y& G3 _) b& c0 Q( f actionGroup.createActionTo$message(this, swarmSel);# c! a0 j0 q% N) {. U [+ [
schedule.at$createAction(0, actionGroup);, m5 T' _( \. K4 i4 P
schedule.at$createAction(1, actionGroup);
. Y5 K- L) E& ~2 R, p schedule.at$createAction(2, actionGroup);! P4 g; u2 [9 C
. j# Z. t4 f# a X+ T } catch (Exception e) {5 g# I |) s" C: |$ q
e.printStackTrace(System.err);. z% X+ y$ q+ P; i2 Q. A3 @
//System.out.println(e);
1 U0 f. |& U8 \ h/ [- B System.exit(1);
3 `, U2 ? }9 L8 {9 b$ q }
8 h o6 E% M/ X% K( k
9 ~6 q5 W. h% O
" ]1 V9 X% p3 Z" D }
7 L, U$ n$ M0 k% z: \4 G# h9 x+ _, \9 B
private void swarmSetp() {+ N$ q% |2 A9 p# a" K0 m' v6 O
list.addLast(new Agent(Id));
8 }( R) C6 |( a Id++;
8 L$ l$ _6 U: h3 y, m" [" s) N }
' ]5 Z4 X1 H# w8 I; u) j1 p" i* u t8 @
public Activity activateIn(Swarm context) {6 }* H* X1 f1 |; X. i8 i
super.activateIn(context);) t/ b3 F( p3 K+ z0 X( {. ?5 }
schedule.activateIn(this);
+ D% @% [1 e' I I) j return getActivity();" F2 S( P" x( u! e7 C- j
}
# E; X. k5 m5 R1 ~6 N0 V3 i8 g8 m) g5 q8 `( [. H6 E* o+ \
public static void main(String[] args) {
& t' N% [. H; c* D9 V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* F+ L$ O0 L0 ~3 a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, c. h& U& O% M3 M, F9 o swarms.buildObjects();) V2 N/ [7 t1 i
swarms.buildActions();$ p0 `* {8 K2 P7 b
swarms.activateIn(null).run();2 r6 c3 W( L! ~; z9 Q& p+ q
}2 D7 u7 t0 I& g2 e+ w
/ R, W+ f6 g/ m9 q. `9 j9 G} |
|