|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 |* c8 U! ?- k" |
# C9 \. m% e* O: q; M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 e; O1 C1 n0 Z) x. E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 [# B4 P+ Z9 N
swarm.SignatureNotFoundException- L6 }, K/ A3 ?5 \0 X: z
at swarm.Selector.<init>(Selector.java:76)
" v! c/ W3 G4 }; a1 j& X1 | at ActionGroupDemo.<init>(ActionGroupDemo.java:37), _0 d9 W; q! x) T4 t( e, `
at ActionGroupDemo.main(ActionGroupDemo.java:67)7 ~6 X0 R/ V+ h% | d- N. }( o
4 I6 w8 }, u6 v7 N4 C3 Z
% j; X5 F( L' ^9 A9 |; n) n2 b. s
import swarm.objectbase.SwarmImpl;+ n# _2 d% n9 ]9 o8 J
import swarm.objectbase.Swarm;1 r& m1 E/ z( I: ^# N0 n- N
import swarm.activity.ScheduleImpl;8 a- v. d" i5 B! W7 \7 ?* {6 j
import swarm.activity.Activity;
3 j6 }3 P' ~$ M& J7 m2 a! N+ b4 gimport swarm.activity.ActionGroupImpl;
' e( w0 u1 n) w0 _0 |import swarm.collections.ListImpl; W7 z) r: `$ D% L: n) }
import swarm.defobj.Zone;
5 ]% ?) n5 X& d& T0 F/ rimport swarm.Globals;
1 t: R- f$ y6 Qimport swarm.Selector;: k0 ]8 ]( s; X' }* p1 g) b: m
import swarm.activity.ActionGroup; 7 x$ t3 k; y( @1 [# T: z* W* g: Z
class Agent {
+ N8 s$ A' \* W' r char id;4 n# [$ _0 N* u7 ?( [" N
5 I% S( W% B0 M+ @ Agent(char id) {+ m* x5 Q$ Q" f, G! ?
this.id = id;
. B P: |9 I0 G. @/ ]! j2 K }3 P9 t; P5 H: S- y4 d) k3 K' f5 q( [
. m' T( Q5 f l+ } public void agentStep() {- }8 O. M3 A- p; q; N7 x' H' x
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 p7 {$ c, o ?7 I }0 J0 j% a5 C5 i+ Y2 A
}) N3 U; W- C( }5 Z! T/ N. A
o9 [+ s7 ^0 H M2 L5 h
public class ActionGroupDemo extends SwarmImpl {5 t! @" Y# E( v7 K. B e$ i* q
ScheduleImpl schedule;( v) f! S# K' f7 }
ActionGroupImpl actionGroup;& I5 U3 `- c# M: B3 K2 M
ListImpl list;& S+ H9 k( a1 N' M! p: C/ Q) n
char Id = 'a';
! Y' \1 i6 g8 \7 G/ J
( f7 M! b5 o8 n ^, [" ?7 c- Y ActionGroupDemo(Zone aZone) {
& e4 B4 T9 L$ f+ `) k super(aZone);" k* G$ Q2 @9 |; i) k% H2 u9 H) e
list = new ListImpl(aZone);3 P/ `' V" `8 `
swarmSetp(); M0 u8 ~$ k9 [, c
actionGroup = new ActionGroupImpl(aZone);
: R7 p1 D0 ^7 z) i schedule = new ScheduleImpl(aZone);, ?* M- I! U; P* r
try {
: a! ?0 p8 q. k/ J& k" ?, w Selector agentSel = new Selector(Agent.class, "agentStep", false);" b" |+ g9 f$ b+ n9 l) z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* Y6 Y+ a4 Y. @% V3 h
5 o+ B6 n. k* T. Y actionGroup.createActionForEach$message(list, agentSel);
B* P- a) {$ g8 \" ] actionGroup.createActionTo$message(this, swarmSel);0 y3 p% d1 F+ Z Y
schedule.at$createAction(0, actionGroup);: N- s: }: I$ y2 c' {! n( a
schedule.at$createAction(1, actionGroup);5 d7 f' B/ p3 P2 |
schedule.at$createAction(2, actionGroup);
% ]+ t! M# m- W7 r: n$ j/ X5 c& B$ x. X% A. K# |9 t
} catch (Exception e) {
& O& Z7 M3 V& W' J0 s: D3 U$ W e.printStackTrace(System.err);5 Y; w q" Q; _7 A, L! r/ L
//System.out.println(e);4 l" j, ]6 x, h7 `, H
System.exit(1);2 a# l \- L# P9 T* E9 ?% E( g
}, j: o; u4 B2 z2 W1 H% C
6 t0 p* ^% F4 A: s# U
' I" X X6 Q0 F' a1 r
}; F+ n# J6 D' g" v( {0 \4 L
% w: D2 g& o' h% l; e7 U: y9 y
private void swarmSetp() {" F4 p" S* h5 K E. x* j2 J2 M& d
list.addLast(new Agent(Id));3 [/ Z4 b. i, T, S' X* R$ b
Id++;
. _0 n2 z2 x' I& u0 F% U9 x7 Y }% U0 m! V: h- W
, W! @# T3 |( {; B7 f public Activity activateIn(Swarm context) {
' \& H U/ v) |# n6 y5 p super.activateIn(context);
2 v, A. Z# W4 Q schedule.activateIn(this);
( ~! T5 l+ c3 [- ]. J! Q3 U return getActivity();
$ w9 C) x5 B4 K2 s, R }$ a% [- Q! Q' c- B
% G7 y9 ]# g6 e6 _ public static void main(String[] args) {
" V y( M: j' }9 J" i9 W8 n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! v9 }$ c+ V ~( P) B( x* o& R
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ a4 E+ x4 d5 R/ }" s" Z7 o swarms.buildObjects();+ g8 |! {9 U. i, L* U K
swarms.buildActions();" z8 F- v5 o b+ j
swarms.activateIn(null).run();
- g8 o3 A \2 _% ]7 K2 b }
1 C- E, Z9 m t. _6 E' h: z. P
, w* \. G6 r1 i} |
|