|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% P# E# G. T9 f
2 S6 K" T7 D' N. B/ Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( s+ u! F0 c& w5 H# ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ ]: G+ @" L2 G* t0 L, A# p
swarm.SignatureNotFoundException
9 C5 ?' V, F) b! a at swarm.Selector.<init>(Selector.java:76)
* i' `0 {: k! K$ z( v8 T# H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- E$ c, X f5 b
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 ?: h0 k# @- J7 y" ?; S
; F5 d/ [% t" x5 |8 ~1 N N7 K: m% _8 k# q7 ?
import swarm.objectbase.SwarmImpl;
. N4 I3 {1 E& j* g5 c- h0 jimport swarm.objectbase.Swarm;8 K R& W: a% r6 o
import swarm.activity.ScheduleImpl;
7 u) }5 r' t. u& l9 pimport swarm.activity.Activity;
9 W. F C- B ], h, h0 u# Nimport swarm.activity.ActionGroupImpl;
1 u% K$ m' x% I/ zimport swarm.collections.ListImpl;/ g. n9 B: d$ n, q
import swarm.defobj.Zone; " s1 u: n$ w# f. n; |
import swarm.Globals;
& J/ }, I1 g: R' u' eimport swarm.Selector;
% h+ W, p! f/ U3 wimport swarm.activity.ActionGroup; : N# g2 @: y# D8 n
class Agent {% N3 R J% Z0 e+ q* [! B
char id;6 _; N& R' Y- i) i$ N
# ~; ~+ w: @1 L) U4 `7 x! ^- J3 L
Agent(char id) {: `: u& F% f" ?+ K8 Q7 V
this.id = id;% b; t9 U- S& e, { V/ S, N3 d1 b8 l
}
2 b% u$ u+ R. }# D; v, M; g L; V8 ]6 [$ w% s
public void agentStep() {+ s- [% l" b/ b+ ^4 t' D) U' ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 e7 R! r7 H$ S* }' Y# _ }
; o$ W; v0 n7 ~# P; g}/ S- J: r$ p0 E* E
4 l3 i# T" k8 F1 l }
public class ActionGroupDemo extends SwarmImpl {1 X' [2 [, M- Z8 U; a% _6 s
ScheduleImpl schedule;
/ O1 l" J8 R9 |9 X5 o8 p4 }9 B ActionGroupImpl actionGroup;
- s& D7 I6 e. o- ?' T ListImpl list;
2 p3 i; `. ^' ]. S1 [' \9 J char Id = 'a';
) q! r! T$ g* f; Q8 S3 e+ W- u y4 o$ o6 z4 N" e
ActionGroupDemo(Zone aZone) {' W" _; _; c! p7 H2 X2 F, U
super(aZone);4 @7 k8 Y- k4 M7 X# U) M+ Q, W! n
list = new ListImpl(aZone);: V2 E: Z. W) C# j- \3 i
swarmSetp();( q* j! ^6 j0 g# ~
actionGroup = new ActionGroupImpl(aZone);# g- C- X8 Z% C) ^- R* T7 Y
schedule = new ScheduleImpl(aZone);
2 R4 N* s9 }" X7 u$ U try {
$ f2 }% h' \$ ]% P Selector agentSel = new Selector(Agent.class, "agentStep", false);% q9 h( @! ]& m/ m' {" Q3 V4 k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 r* c% {/ z P
: U1 `) A3 `* w" t" [+ R8 I0 E+ i actionGroup.createActionForEach$message(list, agentSel);
& F- j0 k6 d% T4 f actionGroup.createActionTo$message(this, swarmSel);3 F1 p2 x) D$ ^
schedule.at$createAction(0, actionGroup);" ^) C: \2 \% E4 B2 _" F4 v/ Z
schedule.at$createAction(1, actionGroup);1 b8 ]# Z! L P/ F0 ~4 V
schedule.at$createAction(2, actionGroup);9 {! d9 E3 Y5 l: Y6 A7 q! y
" y% d. c' a6 s. w2 p' Z' O0 p
} catch (Exception e) {
: I- O( \ Y% }4 ` e.printStackTrace(System.err);
( C' Z2 h) p7 D: E //System.out.println(e);
" {# A% w* ~/ w$ C# g System.exit(1);
; p/ @" B4 H: b; Z5 c# `" q: ~ }
0 J# u! ^# G' \" ] R! C# {
1 T& s- s9 n8 Z" q6 L# `# k: U# z" d4 l* S+ q' ]- V4 X$ Z( h
}9 W9 ~- z, y% Z1 _$ t& l, L2 J
9 c% h$ v9 q B/ J% | private void swarmSetp() {+ [0 ?4 ^/ v9 t/ |. W
list.addLast(new Agent(Id));9 ?) y! a. I5 @. n5 M( H
Id++;1 o9 A8 s- J# `. T
}
9 _- O- [2 q- r4 x, P1 u) B p+ q. _: @
public Activity activateIn(Swarm context) {, q, F; N! I% i3 z
super.activateIn(context);
& U, E: ~% `, o7 u9 y schedule.activateIn(this);
9 t9 U0 W! H/ x# L+ `2 z4 R0 R return getActivity();
3 K' R7 O& s# l+ X+ [8 F } `' \' i) o+ l; l
* i2 L" M3 W7 G; B2 L ]$ e" Y
public static void main(String[] args) {0 }& e7 S1 V; j! z( |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& s' O6 M1 ]7 _& R* b4 {8 f2 K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 n! s1 U3 ^% t
swarms.buildObjects();$ p4 z7 F; {6 v( k1 X' k2 M+ \
swarms.buildActions();4 X2 [/ ~5 `2 Z9 M1 Q# Q U# Q, h
swarms.activateIn(null).run();- w& P: e) s- K! s: |4 } }
}) i& @2 f& _7 J+ u$ a
; ^% L- b) B p9 \
} |
|