|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& m& K* \9 U" A2 m# i+ K6 U9 J
7 u9 O: N8 s: o; Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ W8 W. T0 D, [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 e5 o6 q* H) `1 ^- x5 I4 [+ n
swarm.SignatureNotFoundException
4 U2 X( C& Y9 Q# t9 X& \ at swarm.Selector.<init>(Selector.java:76)+ b3 y2 Q8 }: o7 `
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! K7 }: g- [$ |+ u
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% [+ V* @3 [. m, W6 e
3 d' ^, e0 r* J6 P
3 T( d+ S& B t1 ~6 q3 Vimport swarm.objectbase.SwarmImpl;( w1 N7 S# i" F' F/ D5 f
import swarm.objectbase.Swarm;4 r' c3 [/ \7 J
import swarm.activity.ScheduleImpl;9 i2 G* ?' x$ S6 S& o3 b/ S
import swarm.activity.Activity;
0 G0 t1 x& y0 J" `) dimport swarm.activity.ActionGroupImpl;1 l! I3 ^% w4 S/ B
import swarm.collections.ListImpl;7 P3 j( ~7 L- C; b& Z
import swarm.defobj.Zone; - I6 Z# C" O5 \. F
import swarm.Globals;% X. }* m- U! L \+ Q
import swarm.Selector;
5 D" ~6 B) W9 J; d8 Wimport swarm.activity.ActionGroup; ?$ S3 o" ~: Z0 _9 P. `
class Agent {; _$ T3 b3 k0 @: y* R. b
char id;
A) b8 d0 E2 B; g9 j, U0 B4 @1 T& Y
) P3 @4 w* x% k; A Agent(char id) {
. `3 H. @6 j( z1 z this.id = id; D) l- c( q5 c7 X0 W* ~( D( ~
}
) l: m8 V& `. w* @. w% \5 ~! |
$ l; w- i! ~( `! ]- _) q* a0 M( L$ B: h public void agentStep() {+ I6 U5 {3 x3 S/ m9 p% q+ b" Z
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ a$ ?3 s& I& h }2 i; n/ m; a3 h$ _5 |! g
}+ D( K* ^0 t% e1 {+ U" P9 d& `8 H. _
' o5 ]8 Z" @7 b8 a# p
public class ActionGroupDemo extends SwarmImpl {
3 p8 J( H& n6 h. F ScheduleImpl schedule;% S: y* b6 x' n9 c8 {. i8 H
ActionGroupImpl actionGroup;
; f; M% {1 p3 l ListImpl list;
5 p }" X) ?8 [5 z% P5 T char Id = 'a';. `$ A' |9 a2 K6 ? b
" e( M+ p5 C; [1 u% E* y ActionGroupDemo(Zone aZone) {
$ ~# m7 E+ A. B+ h% N. V super(aZone);1 | G( P( x1 N0 h% }/ `1 O: j
list = new ListImpl(aZone);8 }; B# [* L+ P1 |* ~0 Q) A
swarmSetp();8 B! y" Q- r) t4 b8 Y
actionGroup = new ActionGroupImpl(aZone);" }# K2 `6 j3 Z7 Y
schedule = new ScheduleImpl(aZone);( I$ K( \3 Q) g4 X& ~5 y! Y
try { d2 O" ^: ^5 J( {
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 a+ l$ W X$ \* j; C9 A% V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( q' H5 `3 W; o+ Z- B$ H8 N3 O
& _# V1 z! b. m; ^6 q; K actionGroup.createActionForEach$message(list, agentSel);8 q& Y% N( q+ o
actionGroup.createActionTo$message(this, swarmSel);
" D4 w$ V- p! i6 k+ N schedule.at$createAction(0, actionGroup);2 Q9 x$ _( e) i! u9 x; U( }
schedule.at$createAction(1, actionGroup);
; T% s& S8 Y0 J$ a5 F% I8 f' e schedule.at$createAction(2, actionGroup);
, ^+ N* i. h. h( R
7 [( Z# @& |1 P1 t } catch (Exception e) {- l7 T4 Y, r# F, ]
e.printStackTrace(System.err);2 y R3 B9 W, b7 y2 A2 Y. T4 c
//System.out.println(e);
$ M9 i1 M6 R% l System.exit(1);; [% d" G' E$ k, ~9 V3 j
}
! P+ w& s& C8 g6 K6 y$ t
3 o O; c9 C! g; T% g) @1 F3 R* ~8 ]
}2 n& K$ `% P1 E( ~
& L3 h7 M5 Q# q, h9 l( {/ R
private void swarmSetp() {
( y: Q; c/ u) H/ R0 v list.addLast(new Agent(Id));
8 ~7 x3 D% e. Y6 o3 e% ? Id++;
: i! W( l/ W( D1 }( e+ y& U1 ] }
* n# V+ ^- U4 j( q; t% ~; l7 x5 R5 \, K1 v
public Activity activateIn(Swarm context) {4 T V" d0 T" ? f3 G+ ?% ?2 H+ r
super.activateIn(context);! ?! x% O* p$ J1 z
schedule.activateIn(this);1 X) D- W5 y+ S3 M5 v, B% J' M
return getActivity();
! Z+ g* D6 x% h Q- U }& O& [' e/ g8 e" G5 C. }
8 i ~4 b4 C! Y. t
public static void main(String[] args) {
/ r( z, w+ Z! Z* t) k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 y9 t! F# ~0 K# J0 E h7 P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 X o( G6 } }) C k
swarms.buildObjects();3 [- c$ U k9 K
swarms.buildActions();2 j: a. }$ {. I; A ?3 V, x& O
swarms.activateIn(null).run();
8 `5 s& g! Z% U }
2 K' Q' X W: r5 H
9 g/ Y Q9 i* V. U} |
|