|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ H' ]& }2 T) B4 O" ]% W) m7 S+ [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 m# W/ {9 G7 e* F H: r$ \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 M1 U! }2 v& }* T! b0 Wswarm.SignatureNotFoundException# V7 M8 C) g/ `+ z' |& v- X! \+ P
at swarm.Selector.<init>(Selector.java:76)
1 o& Y; @- R2 K. q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 N+ w4 y& n/ Y' @: V6 L
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; ^( [0 U1 P+ A2 Y0 |: C' g5 t6 H/ f+ r
" u% _8 O/ h; Wimport swarm.objectbase.SwarmImpl;9 b& d/ Q, r0 ~* h' f2 [! p
import swarm.objectbase.Swarm;
- ^. }. Y3 @; I( r! O" l* yimport swarm.activity.ScheduleImpl;+ f0 x0 b3 g4 F) L x7 y7 J
import swarm.activity.Activity;
, E. B y+ ?$ j3 a! Fimport swarm.activity.ActionGroupImpl;9 w; R7 h( W7 U
import swarm.collections.ListImpl;" I. s& ?9 K% N/ P
import swarm.defobj.Zone; 3 I4 {3 N0 w* C/ k/ ]8 \5 {- R2 D# @
import swarm.Globals;
( t5 `' D2 Z. zimport swarm.Selector;) l, T7 X( M) }# N: X. }
import swarm.activity.ActionGroup; / S# y3 g+ o8 G4 }" t
class Agent {$ H( d( O! j% T% X1 K
char id;) y) R% b( |/ N% ]3 v
1 y _5 ^' K. P$ f Agent(char id) {* V, {9 Q( } y$ ?
this.id = id;
0 Z8 N# p' `& m& C9 T/ i* g1 v }
% A' x8 n/ g) b U. [7 y3 o6 O5 ]" i' t
public void agentStep() {- c& L' S: ^& E( g
System.out.println(id + ":" + Globals.env.getCurrentTime());' G6 a7 D+ c( N
}
' M$ \2 G# j- v% n( h}
! w p7 b% \" B" F/ S, B/ x$ ]' F' B) H) W3 e0 U) ~5 |; D2 S
public class ActionGroupDemo extends SwarmImpl {
+ Q1 j5 V+ L- X7 |9 L" t1 V ScheduleImpl schedule;; k- `# z5 V2 k
ActionGroupImpl actionGroup;& e; Y1 o0 @" s9 }/ D
ListImpl list;% G4 j8 S0 @( P* e( G
char Id = 'a';
4 ?; ~, K* v* P7 X1 ], q1 M# m" R. q1 O" _$ I C( U
ActionGroupDemo(Zone aZone) {2 |% o1 {/ c4 y# `3 c
super(aZone); S& h6 w& [ E3 q
list = new ListImpl(aZone);
( N, A( x( x% h! F$ g% m swarmSetp();
/ z, r; l4 _3 u- A* s% T' c actionGroup = new ActionGroupImpl(aZone);
: y# [+ P! {. u; U5 O schedule = new ScheduleImpl(aZone);
& l5 k* F7 ^0 P; Q2 g* A: ]" F; P try {& w. ^4 | h% p* w: j7 d& ^: j& o
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ R$ Q- Y1 Q6 Q; x
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& [& `% r$ H5 M+ ?* d @5 p; O: d4 P+ c [1 }
actionGroup.createActionForEach$message(list, agentSel);
% b8 D! ^$ @$ B+ S3 r4 y actionGroup.createActionTo$message(this, swarmSel);) Y. v% o8 N& a
schedule.at$createAction(0, actionGroup);
/ p4 r7 ^& p6 ^ schedule.at$createAction(1, actionGroup);
$ ]. B |6 W* d! Q0 s6 G: Z schedule.at$createAction(2, actionGroup);2 z' x, g7 T! B1 d7 w2 h) R
6 M* L8 ?; T1 e A: m9 x2 D
} catch (Exception e) {* ?* b7 i! E! @- H
e.printStackTrace(System.err);' b- _- |* O4 q, Z
//System.out.println(e);
r A3 J* V; R1 w2 f System.exit(1);
5 b; B r4 B# C, X9 x }. T9 w9 U- m8 G$ m" D* g) ?; b% e6 |
7 K8 f& W' z4 j+ R, O# v" l
7 m! A. `4 x4 t' i, ]3 A
}
8 p: f8 S0 j# a3 r1 T5 K4 D" p) U4 F3 f
' j# H* b+ f* A private void swarmSetp() {
7 s5 b2 c, p b0 R$ c- _ list.addLast(new Agent(Id));6 |0 w1 M! O4 C" Q- u
Id++;
, L# C5 q' p0 Y) b3 o7 ^6 ], a }$ o \. d# n2 l( x6 W/ w
# w$ ?$ b/ w4 n. ~7 F public Activity activateIn(Swarm context) {+ g7 m2 g3 A, n$ c- }
super.activateIn(context);0 t" G1 N! Z1 m) Z2 ^* @ g
schedule.activateIn(this);( g# U5 |4 }. `' r* b4 P$ M
return getActivity();
1 X3 D: A2 A' L }$ r# x8 l+ V$ x1 O" e) ^
i6 X% I" B" f T3 ]: j7 P public static void main(String[] args) {
4 w+ v4 A6 a" P; Q* J2 Y( G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) G3 ?3 U, ~# S& s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: M4 O; m; a: X4 }- l
swarms.buildObjects();
0 x m9 z) P8 P, o% q4 ? swarms.buildActions();( y, G0 r4 H7 Z) w/ A! N
swarms.activateIn(null).run();
# U# s3 a( K4 G0 F+ F7 h }* X1 T, F- X- [ d' i6 f
2 k' D5 f9 |" ?7 ]8 J: e! C: ^' o P} |
|