|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! n+ S/ v( z* ]" M0 S. R+ C
" m/ s* S7 e8 P" K- p- v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- ~, i- a- ^/ P+ r2 ~0 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 C6 r9 T6 M) @3 ?! Aswarm.SignatureNotFoundException
' x! \# B) V" C# V. m8 J at swarm.Selector.<init>(Selector.java:76)
. b$ }, H. b6 j. w0 n at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 Y- Q1 Q0 X; Z" @' ~9 Y: ]! L3 Z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
m' e3 x0 P B, E( {3 a( ^4 S" F
* o/ R& ]/ y0 @; N* l7 {+ a% c3 m% y; C! c* H, W% V
import swarm.objectbase.SwarmImpl;3 V ~) k- p5 w S* w2 {/ X7 q
import swarm.objectbase.Swarm;
7 m, W8 @6 T" T2 n" y9 \import swarm.activity.ScheduleImpl;
/ v9 _3 Y5 V2 G! d. N) eimport swarm.activity.Activity;* d$ J9 X4 w6 K
import swarm.activity.ActionGroupImpl;
3 N/ }3 g* E" J. ]import swarm.collections.ListImpl;
a1 _) @* @ gimport swarm.defobj.Zone;
( n! W, U. V# v, K) K( Mimport swarm.Globals;
/ @- D; I @4 \import swarm.Selector;8 F! r& r* b1 Y' \
import swarm.activity.ActionGroup; 0 Z B1 B7 G4 w0 M# M
class Agent {% x/ {8 W, l. z$ C7 f7 F, z( z5 @
char id;9 T* i0 B. K; Q i
5 E# D$ {8 M K$ r% J3 d5 P; m
Agent(char id) {; T: r9 \! |5 P8 n4 a5 P
this.id = id;- r) x. h9 `) L( b \7 q7 w9 a/ j
}4 b% {1 ^0 z o7 M- g1 E; X2 T) b
7 B8 z: V7 [. U1 w( r
public void agentStep() {6 `$ y7 {' s1 Z2 c: z$ n
System.out.println(id + ":" + Globals.env.getCurrentTime());
( Z, i0 u: k6 \! Z) r3 q }5 o$ q1 J* T9 L3 m: `; C9 ?
}+ C1 K/ h F9 `( ]: q
8 n/ f6 }( |) |* wpublic class ActionGroupDemo extends SwarmImpl {
' Q" {/ B* X# @6 I ScheduleImpl schedule;
3 O% P% o) I' i) U4 l: z6 I9 } ActionGroupImpl actionGroup;) i& j- m+ @' g# M8 b, h! v3 W
ListImpl list; Y6 a- z3 A: X; {0 D7 g
char Id = 'a';: j7 l# r& z' c( F2 ?! F N" q
) c; `4 ^8 ?/ u# L. L
ActionGroupDemo(Zone aZone) {( k& E4 {- E# E5 f- b: z
super(aZone);
0 A' `$ d8 r# l% ]% G7 l8 s list = new ListImpl(aZone);
5 Z* p) F) L X# L, } swarmSetp();
) T W% X Q) {5 }/ L actionGroup = new ActionGroupImpl(aZone);
; S4 q, Z; S; Y# h schedule = new ScheduleImpl(aZone);& e5 o' M9 W3 y
try {: c6 u* @0 \2 l+ r
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) p5 e; [/ {9 Z/ V- ?. P# m0 Q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: v4 ~( `( B2 O: h% Z8 j
& D0 t' @% t' y: a$ C actionGroup.createActionForEach$message(list, agentSel);
5 V2 X+ t9 ]- f" g0 E, |: E actionGroup.createActionTo$message(this, swarmSel);9 S8 W% t+ z2 F6 b' X$ F5 n
schedule.at$createAction(0, actionGroup);
& s' s& s8 s% x: J. x" L( p. o3 b schedule.at$createAction(1, actionGroup);/ _% i+ W* Y4 C% z4 Z) |
schedule.at$createAction(2, actionGroup);: D' L5 ~/ d+ x; Y& O- _! l
! ?* a0 N7 _, q } catch (Exception e) {
) v3 x) a' j& o _3 A8 j e.printStackTrace(System.err);& o8 B0 I5 t4 g1 F) S9 e! W
//System.out.println(e);5 d/ P+ U1 r" G2 |% _. L9 W
System.exit(1);
$ A2 O( e! @$ H2 K, ]! \ }2 s q& C8 a& \4 I
$ D! l' U; J+ B4 b" r0 r& X7 D" n8 }# d& \
}
2 e" E+ q, z# \) |+ t% [2 O5 e: h: A; I( ?! Z2 d, d
private void swarmSetp() {
% i5 l8 E7 V2 G, u list.addLast(new Agent(Id));8 }1 ?6 G! s* n
Id++;% ]! t9 U: u) {0 o0 R) k7 ?. p6 c$ d- r
}
8 t9 R4 B; {" t6 x# K+ w; X5 R4 C8 v4 c6 t4 E) l4 G( A
public Activity activateIn(Swarm context) {" k2 Q9 Q; E+ K5 t4 J, f- j: s5 _
super.activateIn(context);
1 V. B$ M# G0 n; @2 W- P( d schedule.activateIn(this);; h5 q+ j8 j# j
return getActivity();4 q( J/ z8 k- ^# p# a0 U+ {
}; \! v- \" I H7 Y4 e# W
, z9 q0 ^1 Y+ \5 u! F2 q+ K+ g
public static void main(String[] args) {
2 K8 f. l; v n8 e+ D$ ^+ V1 N Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" y; l3 |' z+ g7 j+ _( y Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 C# U7 A% d% F7 t
swarms.buildObjects();
- `" e3 H* p. \: t* V. h swarms.buildActions();" R6 A8 U; V7 B8 i& S" W4 \
swarms.activateIn(null).run();
( _3 G* Y% V% \ A _7 d( ?7 B+ F }4 Y/ e: k3 {# j3 J/ d, z2 s
. d S9 W3 t' {7 `, m/ c4 u$ w
} |
|