|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* m* s) j- _) o/ m3 Y! F/ O. A/ t. o% F' j2 X. n M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! V& A! j# Q. B3 Z! I+ ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# k1 Y0 F( Y0 j9 ?* y- A" Mswarm.SignatureNotFoundException! U$ ~' D+ P2 N+ g( q! ~$ G
at swarm.Selector.<init>(Selector.java:76): i: W4 ?2 \4 @- U7 q1 N) p' v3 f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, f: S6 [+ S- F! r/ B" v/ g at ActionGroupDemo.main(ActionGroupDemo.java:67)$ I- R( m! n8 w' M& l1 X
$ T; |# ]* p3 Q; l8 K) a
7 i3 l- ~$ A. I
import swarm.objectbase.SwarmImpl;
/ S& ?! l- C4 @+ W9 ]" K3 m% Qimport swarm.objectbase.Swarm;
2 z0 h5 t! Q q$ Jimport swarm.activity.ScheduleImpl;# j; h+ Q- ?3 x' s2 C
import swarm.activity.Activity;
1 c1 I* i% R0 ximport swarm.activity.ActionGroupImpl;
& A" B \+ a* T- T; I1 _import swarm.collections.ListImpl;
( |- ]- q7 q) w/ Eimport swarm.defobj.Zone; " i* F! c4 U# X. U8 d. a4 o
import swarm.Globals;
. G: m% X" v+ W) ^# Himport swarm.Selector;& F. H& a% j3 m8 C( [2 ]. o
import swarm.activity.ActionGroup;
0 l; m8 r" Q+ _* U) Pclass Agent {
- D7 m* a2 V& i$ z1 u( Z char id;
# P i D* J% _/ D; w* p! {6 K4 T' y. w+ c" S" j6 E3 X7 c* z
Agent(char id) {/ X# l8 h* T$ J
this.id = id;0 G, T9 d) y7 a7 V: F
}3 a/ w, ?3 R) \; \2 v4 U x
$ z" z7 M, G" L6 Q; G
public void agentStep() {
7 U7 Z8 U% R* f3 H* P8 Q! ^ System.out.println(id + ":" + Globals.env.getCurrentTime());
P5 W: g. g& w" ~/ s5 j3 r! y( X }
& h: b( V6 {4 ^}3 e: b/ v7 O+ H* a
" @! `) P/ K0 }6 N2 n. ypublic class ActionGroupDemo extends SwarmImpl {5 x M6 g2 B1 D
ScheduleImpl schedule; ^' Y( T& l. F+ A4 I/ e
ActionGroupImpl actionGroup;" M* N5 ?* l$ l3 X
ListImpl list;& x+ D, j. n% x8 m1 p
char Id = 'a';
$ S% A/ @* P: Q* _$ B4 I' A/ o+ u7 L8 h) `, O m: [, N
ActionGroupDemo(Zone aZone) {
# ?% N+ O* g# \3 t super(aZone);1 d& T2 y6 B. [/ g( w3 O# }# g- f% i
list = new ListImpl(aZone);; F5 s% I2 ^. o+ T3 m
swarmSetp();6 Q4 h6 d8 }3 e' [3 _; Y \
actionGroup = new ActionGroupImpl(aZone);/ _& P, I* O& _5 r6 ^
schedule = new ScheduleImpl(aZone);! N0 U( u3 y$ ?: J( T
try {
& C, A3 V9 E6 I7 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 i- ^; W8 e' I Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 r2 g6 l$ L2 v( M( r* T- g" k
* U6 _) i: G$ [5 \ A actionGroup.createActionForEach$message(list, agentSel);4 o$ d6 M( }- P1 ?
actionGroup.createActionTo$message(this, swarmSel);- @2 Z! X: n: W0 ^: y% ^
schedule.at$createAction(0, actionGroup);
* z9 k; j" B' ^: Y) [6 b schedule.at$createAction(1, actionGroup);
5 k' I) L z0 h schedule.at$createAction(2, actionGroup);
5 U! k" a% R. I! `/ i" Z( r" M6 p2 x; C7 k# v( E; h
} catch (Exception e) {
3 `& p4 a! {8 T$ D e.printStackTrace(System.err);$ N% X* R' B! |5 @; }: Z
//System.out.println(e); L. i8 ?2 ]& A# ~8 Q; B
System.exit(1);
2 }' x; z8 u9 P1 c* k1 C* Z }
# L$ P6 t9 X! E( S% I) Y3 h
$ y! F% Q! `6 Q; g# h' ], F
6 G7 F3 ^, G f. T) v8 }5 b5 ] }8 k' U9 `1 d3 H: _- V6 v6 C
5 G, C7 f3 t$ J1 n6 ?! u
private void swarmSetp() {/ _! \7 H! F& r [9 j
list.addLast(new Agent(Id));$ |0 E! H! U; P+ B
Id++;" x7 [; F6 ]0 _
}) D% \. `. u. h
1 i5 M( o5 J0 ?
public Activity activateIn(Swarm context) {
- H5 M" P7 `; T0 P super.activateIn(context);
3 |2 p: i, L8 y7 e schedule.activateIn(this);5 H4 M* }+ ~3 c
return getActivity();
4 z" C8 U$ j7 Z' A3 v+ U }
* ?0 c. t/ X5 k6 r" D5 |, I0 |/ }4 W! [9 f" f% W
public static void main(String[] args) {
3 B+ m6 ^* m: W! s8 b- b! @% O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 M" S) ^% N) T+ |0 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# m/ S. r1 M8 d+ E1 ]& j) G5 R swarms.buildObjects();8 [* j& R0 y# G$ Z [0 j6 x
swarms.buildActions();
7 G: l8 x1 g; E8 k7 _* h swarms.activateIn(null).run();
# T8 O' k4 c w# A/ s. |" b }
/ {* D! P! v6 P7 g# a8 Y8 \- P1 L9 W+ i2 v- F0 b- `6 G
} |
|