|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ I% {" ?. H5 f* U) @/ N6 z" K8 I# u7 y3 X3 @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ o5 l' c4 X6 z' O0 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* ?0 [5 R* ^3 H: d1 }5 `% I
swarm.SignatureNotFoundException
. ~# @5 v W7 k at swarm.Selector.<init>(Selector.java:76)
j) @; Q! o+ L5 E1 j8 X' A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! Y& `7 a6 M+ M5 y3 z2 a5 l at ActionGroupDemo.main(ActionGroupDemo.java:67)
" P: e) s9 D! `- y, ^
$ E3 ~+ i; U) y$ x+ m
. R4 |7 p. Y' {: h0 W; v6 Mimport swarm.objectbase.SwarmImpl;- m# W/ Y. U- }* `+ v& @
import swarm.objectbase.Swarm;
% x; U6 v4 Y# w+ e5 |- M* ~& ~5 Aimport swarm.activity.ScheduleImpl;4 Q( ~# K* l% E. ]
import swarm.activity.Activity;& B5 B# J" {9 u, _: c9 j# ~
import swarm.activity.ActionGroupImpl;6 j5 @! b( d1 H2 L: o* J" U; ]) ?
import swarm.collections.ListImpl;1 M6 Y! S3 w+ |; a, ?
import swarm.defobj.Zone;
: h, c7 D4 m1 T: t* {import swarm.Globals;
7 d' g, D- {# }( himport swarm.Selector;' l& ?1 y8 v5 w1 @" S1 r: A
import swarm.activity.ActionGroup; ( H3 y) ]7 L$ {4 y3 Q
class Agent {
2 u# p' ]% F/ M* ^" i% s! B char id;) q8 ?' ^# |5 J% p
) G0 F8 T) d' S2 A8 u' d9 k/ r Agent(char id) {) t3 ?4 u! l& ?' H9 X- e
this.id = id;+ ] a, j+ w w" t7 P$ i6 E# ?
}* W0 D R" I" K9 O
# \1 p0 P0 D% k
public void agentStep() {/ ^% c" w9 k* D2 k6 u; o) I3 `
System.out.println(id + ":" + Globals.env.getCurrentTime());8 [0 x3 M' c5 S/ V% i
}
8 E# L- F% X4 k3 @}5 q' n# E# v/ J% u+ ]" r
4 O( d& C( Q" V2 g! J fpublic class ActionGroupDemo extends SwarmImpl {
1 A. {9 g9 B ~8 C! ]9 v) U/ g$ a ScheduleImpl schedule;5 m! ?, l# G" W, r# C! t
ActionGroupImpl actionGroup;% v* F2 ?6 d. T- @) t5 G
ListImpl list;/ h$ g! d% L9 |. b
char Id = 'a';" {7 _4 U+ _! D) {
& z; H: O2 S* k" x9 m4 `
ActionGroupDemo(Zone aZone) {3 i5 x0 @6 ~0 D
super(aZone);
) ?( f8 @ D6 p) C3 L list = new ListImpl(aZone);
- m4 c9 I2 o K' @; U7 g8 {8 a/ S) K swarmSetp();9 e: e+ j0 b5 P( l" d- A3 |( ]& C0 \
actionGroup = new ActionGroupImpl(aZone);
1 v* \( z* ]; W- ?) F9 }+ W schedule = new ScheduleImpl(aZone);6 a' {2 Z# d% M6 G$ D/ P) N
try {
Z9 ~9 ~; y/ _2 c& J5 M Selector agentSel = new Selector(Agent.class, "agentStep", false); }, M! D3 y, R7 [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% V _+ ?6 u7 \. G
; k2 F9 U6 m2 L9 R5 }
actionGroup.createActionForEach$message(list, agentSel);+ g) Z" g" F5 c1 e3 J) W
actionGroup.createActionTo$message(this, swarmSel);
' c& E6 a) Y5 R8 M5 v' t4 D9 r2 K schedule.at$createAction(0, actionGroup);
* Y0 v" R0 }" q schedule.at$createAction(1, actionGroup);
' k9 g# ~# r" Z% @ schedule.at$createAction(2, actionGroup);; N8 ~9 L* L0 ?! ^7 @$ }1 N
) u/ J1 ^4 n. l" v- T1 q# a7 Y* K
} catch (Exception e) {
3 c& [. M/ k2 W e.printStackTrace(System.err);8 q V4 \: g1 K* u7 z/ x0 E! ]3 \
//System.out.println(e);
; e. k4 F# k+ m5 @' e/ Z$ g! q System.exit(1);! C" g9 @$ A/ a6 u2 E3 `
}: p2 U! M; O; {; x* n) w) W/ C- c# Z
. z* V, Y6 j* y# B; O b$ r, E7 Z
f& w6 X7 o7 ~. M, h$ `
}! `+ G* X# B$ k6 q" ~3 W
0 W$ n$ P R, _1 S: Q @9 m% l* x2 _6 R! D
private void swarmSetp() {6 t1 m+ `) @: b
list.addLast(new Agent(Id));
* P5 I: [- N- {4 N$ M Id++;/ K1 h: f: K5 y) [
}
! c7 A: }1 t( [/ n* B% B# w. C4 T) ^+ Q- V R& R
public Activity activateIn(Swarm context) {
; m6 R9 K9 `: D D super.activateIn(context);6 [! N0 w; `' u0 W
schedule.activateIn(this);! R. X: j( z( K9 O0 |- x
return getActivity();! J9 i; Z, S6 k
}8 |$ P; G2 |6 l0 G
, d. j) c6 R. g4 q' b& y! Z
public static void main(String[] args) {* q' ?* b" F2 N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. m; W* ?# Q$ T; i1 [; s" F9 Y Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ i/ ^# V7 H8 V+ W9 n) V9 Q1 r
swarms.buildObjects();
: |. q1 ^/ {3 Z3 R' ?4 }3 w7 h% j swarms.buildActions();, Z; X8 [2 T+ ?: m2 H4 S, j
swarms.activateIn(null).run();& d4 Q+ \1 E0 \8 Y. u% i
}+ e# |/ c- r7 f$ z( v# J
" ]: ^" ^ [' d" ]( ] [} |
|