|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 Q2 |& X" R5 B+ ?# n9 h
% W5 A3 W& S M+ h U, P2 G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 A2 m! m1 R2 T4 t/ i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' _9 ^1 s7 N3 {( h0 J. Mswarm.SignatureNotFoundException
# |! C! g8 m8 [3 R: h$ X l8 r at swarm.Selector.<init>(Selector.java:76); o T' o1 y! |2 |/ p' {) i
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 I5 C) H+ L% z6 A2 \ G
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# V0 l1 M9 u# ?: h' `) e9 H0 m5 g2 u$ y! q
$ h" e, Z% p6 H% S; F6 N2 X& K
import swarm.objectbase.SwarmImpl;0 `& f! n4 K F5 O
import swarm.objectbase.Swarm;) F7 q7 i2 J( p) W" ?
import swarm.activity.ScheduleImpl;, V- _ h% k- v1 e5 x
import swarm.activity.Activity; L, x0 r( b( W- _- B' S" N" X. h* D9 E
import swarm.activity.ActionGroupImpl;
! L$ o7 C6 k1 ?6 ?7 }import swarm.collections.ListImpl;
, P' a( e$ F, |: vimport swarm.defobj.Zone; 0 O5 m- H9 R/ A5 G- n- F# o
import swarm.Globals;0 |# I$ e6 P3 E" R0 K
import swarm.Selector;
, ^+ y1 o) _, {import swarm.activity.ActionGroup; $ e: \" Z# \6 @4 w* S
class Agent {' M4 f7 o7 ^ m
char id;! r+ Y. O* T& R" ?7 B( {
& {. a: |- d$ q Agent(char id) {) A% B( A* P7 y2 V$ ^- a& p' M
this.id = id;( ^; U7 d6 f' V; m# {) s
}9 Y# {& `% u$ F4 s2 @: C2 E, ~
- `/ L; Z" u* z2 {1 ?
public void agentStep() {7 C7 ^% h# k! s7 H
System.out.println(id + ":" + Globals.env.getCurrentTime());
; {' Y' g* I ]) b' r% l% ] }1 x9 ?( ~4 i- t
}
. d" b/ L P" I' {
' [8 B6 n! ~! D( [7 x& fpublic class ActionGroupDemo extends SwarmImpl {7 j' N' p- j8 W, U! L$ T
ScheduleImpl schedule;
6 Y' m0 P5 k E4 z% n. H ActionGroupImpl actionGroup;7 U$ Y" }+ C/ H8 l9 O
ListImpl list;: `$ N W' {: }) n1 z$ w# I
char Id = 'a';9 J8 X6 S4 N- n/ c0 W g
0 Z4 s/ w: H9 M+ ]) B8 u3 h$ P
ActionGroupDemo(Zone aZone) {4 x* { ` e% Y2 N+ G4 {
super(aZone);' M4 g' ^; ^. U3 S. O. y
list = new ListImpl(aZone);
, N; d$ j- [+ b7 C; @ swarmSetp();8 Z3 g' Z+ V8 x
actionGroup = new ActionGroupImpl(aZone);0 ?& h* E: t8 F' L6 _5 p6 E1 h
schedule = new ScheduleImpl(aZone);- W' j, p& g) g! H0 g s
try {
* B5 t% X. s" K) F; F Selector agentSel = new Selector(Agent.class, "agentStep", false);- [; m4 R- p, r: p) }* x, j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. s# J+ G2 m& v G5 ~, a
3 H( ^, f7 ]5 o actionGroup.createActionForEach$message(list, agentSel);7 u1 q1 z9 C O/ j5 a& M2 a
actionGroup.createActionTo$message(this, swarmSel);* N& \" ^4 x, C0 G3 e
schedule.at$createAction(0, actionGroup);2 C3 x# o% f& T u; ^
schedule.at$createAction(1, actionGroup);) o( z! G1 T @
schedule.at$createAction(2, actionGroup);- W9 k8 P1 P0 F% u
3 T5 M6 S5 }5 W- _6 v+ L } catch (Exception e) {
, y3 O8 \7 v/ @, J- t8 _ e.printStackTrace(System.err);
; J, C- R. a& ~. [! m //System.out.println(e);+ J M! L0 E) f9 v6 H
System.exit(1);
( b) a& L' h/ e5 V7 b l }7 ^% T0 w9 l. Q. Y$ u- \
- X A- w# w0 h9 a0 e. h4 X
/ p& G% Y; |& p3 ~7 ^; K/ j }8 j+ j ]6 R) S8 {$ j
% r7 r0 o5 b% s
private void swarmSetp() {& b# `( r+ k3 A: S
list.addLast(new Agent(Id));
: B7 R2 L8 ?' @9 t' e. B Id++;7 m$ t4 W6 C# {$ o
}2 o5 K6 R" X+ n
6 V, n* S! T' o, q( R. ]' ^ public Activity activateIn(Swarm context) {! S/ W. }7 ^- r+ L5 `& L
super.activateIn(context);
6 [. A8 f3 E! _* C) Q schedule.activateIn(this);
7 M) c% |5 r, g return getActivity();
; ~4 ]. F# [5 ~! \! w }1 N5 f5 r m" e3 C8 x5 J
' i* W0 n4 s, l/ K2 S' b
public static void main(String[] args) {
" e# O- E4 S0 f: @; f. I7 q' Y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ ] X0 ^( B3 p$ R1 c. v. A- y9 ~ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) l" ~& q" i; a" }5 y/ H swarms.buildObjects();5 h, v3 r; X' q( B# s7 I. ]4 c
swarms.buildActions();
! _3 s: ~8 ]) U0 b$ g; A8 D8 D/ e swarms.activateIn(null).run();
}% p& J1 y' C. f S }
b* q8 b. r2 a, M! J6 P1 O) @# o0 f7 Q1 R2 |) x Y3 Y( V
} |
|