|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 p# I3 u$ V9 l1 q# q/ G- T' n; Z: @% a" M4 m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ R/ C; g7 h$ n8 c; j4 b. G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 O) v T0 z/ @: gswarm.SignatureNotFoundException
$ j* j* R. a8 B+ } at swarm.Selector.<init>(Selector.java:76)
0 B& U8 ^. U) h: B, e, r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 c) c- _, F' h at ActionGroupDemo.main(ActionGroupDemo.java:67)
Z% C' R+ |9 @! H! z
- ?0 X/ L$ D; N4 F+ m2 k' s. E; N- f
import swarm.objectbase.SwarmImpl;- N2 X2 w& ^3 Z L9 z$ ~0 E6 |' e" d
import swarm.objectbase.Swarm;+ a2 ^) j; W6 m9 v- l3 v" i* e
import swarm.activity.ScheduleImpl;- G$ o4 W# E7 m3 E( o* C. G) |
import swarm.activity.Activity;
0 B: C6 b% b/ W/ Z8 p' @% fimport swarm.activity.ActionGroupImpl;
?2 [; h b) w' M6 F/ k/ kimport swarm.collections.ListImpl;* B3 [+ N$ [# N* V
import swarm.defobj.Zone; 8 L+ ]7 O9 E3 W1 y
import swarm.Globals;
! Z9 L! X# P7 ?# Bimport swarm.Selector;
* P* G( E( u; q3 p- s( \* dimport swarm.activity.ActionGroup;
6 D w' O7 W# _* l/ R* x3 kclass Agent {: \# O `) \' f0 B
char id;3 O0 E* V( y' j' d. b
; O" R9 Y; {; q4 N) }5 [* o* Q
Agent(char id) {
" K- H% I3 L3 n$ {5 S this.id = id;9 ^: N9 }! R& h# A4 d
}; \7 {! T+ _0 l$ m3 {% s# C: L, M
! i7 `( b! r& C2 ]
public void agentStep() {
# b% z4 z% a, j System.out.println(id + ":" + Globals.env.getCurrentTime());
( K5 I5 ?& q) t( {6 r }$ m1 S/ h" x& b' m
}9 |5 j9 Y! }9 X9 q( O
}# `8 h6 {) p* ?
public class ActionGroupDemo extends SwarmImpl {
5 O ^4 b& X* t% b5 \7 d& o& d% h ScheduleImpl schedule;
) }4 I# ~2 {' |* |6 d ActionGroupImpl actionGroup;: S3 W% i/ K! R7 [5 h+ V. u
ListImpl list;% r2 \4 f# l9 b6 K: }6 H
char Id = 'a';
2 b! w' {7 m# S; c4 K" I& u7 }' y1 f1 g1 O
ActionGroupDemo(Zone aZone) {; ~7 P& I$ ~, m: x
super(aZone);7 @6 B; ~" R9 D; g( T/ P
list = new ListImpl(aZone);
3 ?( X& s2 A" u swarmSetp();
& p' b$ d, q: p* Q7 M, q" x3 F' Y actionGroup = new ActionGroupImpl(aZone);$ P2 c5 {9 r4 n) U4 ?( S. O; h* p
schedule = new ScheduleImpl(aZone);
/ n7 n4 f% R0 U) L try {
( R9 \3 E! `3 {; s, v$ x Selector agentSel = new Selector(Agent.class, "agentStep", false);- V P4 ^0 m" R' b0 ]. Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 {7 w6 i1 e; `0 A* A1 |
# C2 ~ D4 _: J1 f9 t2 T2 t actionGroup.createActionForEach$message(list, agentSel);
0 ? U! J6 G1 j" O actionGroup.createActionTo$message(this, swarmSel);+ u! a7 V+ c5 g
schedule.at$createAction(0, actionGroup);
: ^5 ?$ _% v D6 g8 W5 _/ f+ Y w* `- R schedule.at$createAction(1, actionGroup);
% a5 Y. e# t0 V n* I- R& s) b schedule.at$createAction(2, actionGroup);& W, a! O# {, o- o$ t
. m+ L7 I! F7 ~ q$ o" V1 S7 ?
} catch (Exception e) {6 a# e4 q1 N4 R% c; B
e.printStackTrace(System.err);% P/ r8 Q% N0 f& Z
//System.out.println(e);. o I7 I) Q1 w+ g+ n
System.exit(1);
! Y9 R; t8 q O }3 w- l9 l* _+ e, P$ N1 T5 Q' K
8 j8 p; p$ c8 S- m4 N
6 Y; r# v% f. n4 E0 m3 M/ @$ x }
5 a* H/ Z0 o. D4 I* \; T! ^% q9 y2 T" R0 B6 ]
private void swarmSetp() {9 q2 x* l: x: K6 Z
list.addLast(new Agent(Id));2 |7 T, O7 L5 p! L/ i
Id++;
( N; o1 N. Q2 @( w3 l' ] }
# _% U- I \ {8 b' d! k
: V0 l M2 m" N9 F3 u1 l& _ public Activity activateIn(Swarm context) {8 [3 Q# U" d% G8 }! d }! p8 a! X* M
super.activateIn(context);/ D% z* f2 b( z) }3 Q: ^0 }
schedule.activateIn(this);
5 T; F( `+ K. E3 k8 m return getActivity();: |( g) Q+ O! ]6 ~3 N
}: Q C- _" q7 _$ e( o
: W X; K+ I' C
public static void main(String[] args) {
1 ]7 A& G$ _* N' B; ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! I* x( O. R6 e; g% V. H) U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, \$ W' v v& t1 Y( t% o Y1 l swarms.buildObjects();
( F) ?4 T C- M" g/ M4 q; C2 G; V swarms.buildActions();1 k6 r# U; y# ]" P7 j$ b# p" Y) \
swarms.activateIn(null).run();
6 w: z' C7 R4 z* |" }) j }
2 s- o% J1 a8 X8 c1 y' x* Y# a1 Y
1 a0 i$ p7 U; @& h- c} |
|