|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 V" H+ v% ], m' t# A. H9 R* Z/ q7 l) h4 a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ D+ A& t- j& O1 y; O3 x8 n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 Y6 C3 `9 ~1 h% a
swarm.SignatureNotFoundException; t; d1 [& F" o W1 [9 J
at swarm.Selector.<init>(Selector.java:76)
0 K7 Y9 M8 C: o at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 D# b* r. [! @) C; d+ v. R
at ActionGroupDemo.main(ActionGroupDemo.java:67)+ G/ s4 ?( G& l+ Z# x( m9 ^
1 y3 ?0 w; W+ s% _4 }) o
/ Q' Y' ~7 Q! i f& S! ?% zimport swarm.objectbase.SwarmImpl;5 O- s9 Y: r1 o$ o
import swarm.objectbase.Swarm;" h" Q4 c. ~# |* E: `: B( i
import swarm.activity.ScheduleImpl;6 G/ W' Z# m- A3 u& _$ y* w
import swarm.activity.Activity;
+ f8 ~* k- y ~1 b$ U( gimport swarm.activity.ActionGroupImpl;) [; ~. i7 F( |% l
import swarm.collections.ListImpl;4 `% \" I! ?: x
import swarm.defobj.Zone;
) d' j$ s" O" l$ g+ }. u( uimport swarm.Globals;$ v5 m$ ^% z5 n5 ^9 s
import swarm.Selector;0 p' [0 I6 b9 r% v6 y
import swarm.activity.ActionGroup; 0 l9 j: ?5 B1 m# q* ~" b6 x" _9 d
class Agent {
# K0 ^5 a" m4 s3 m P* z char id;! w, [9 v% L' ]! `
/ I1 a! c" P. @' H7 }; ~# z% K0 o Agent(char id) {8 G' `9 N/ P% ~/ N# j& O/ X6 R8 p& e
this.id = id;1 n" T! U$ ?' q' s/ W7 H: y6 |
}
1 k, o7 r' J, }2 `- W! A* e' x. Z! l3 B9 S# v
public void agentStep() {/ ?! C# L$ O- q5 b) I
System.out.println(id + ":" + Globals.env.getCurrentTime());) Z, C' z' R+ Q7 f3 W& z ^
}& m* [ X# m! J: ?
}# l1 g4 K; y+ m+ u) x8 C
6 L+ q- h+ E) z5 W
public class ActionGroupDemo extends SwarmImpl {3 a2 B: u" t& E# ]8 G% `+ @( l& @- D
ScheduleImpl schedule;' w4 b$ k8 W9 ^8 g& i
ActionGroupImpl actionGroup;2 c% Y& n& m! }" C4 _, j
ListImpl list;, R; Y2 g: [; K
char Id = 'a';
; Q& f8 x% Y) @% Q* q) J4 }) [/ u w; O/ X( p9 g; U9 t7 V- z5 V
ActionGroupDemo(Zone aZone) {
4 U" J d' D+ M5 \1 e) r super(aZone);" [ E5 v2 q% z
list = new ListImpl(aZone);
1 S3 g ]: a! M* V4 B5 G- n$ O swarmSetp();% i( W3 H8 y# S0 V% }
actionGroup = new ActionGroupImpl(aZone);
9 ~; B7 Q# e4 z0 W2 ]4 \0 n schedule = new ScheduleImpl(aZone);- P$ a' f2 P, y
try {
0 o7 K/ i2 A- m Selector agentSel = new Selector(Agent.class, "agentStep", false);
# w0 @+ b% E4 w( e; l( z9 ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" T/ M, X0 w0 Z; Y. _& Y q9 f
, B& X' [ N, p8 G) x2 l5 a$ P actionGroup.createActionForEach$message(list, agentSel);6 [5 P9 R9 R0 D' l
actionGroup.createActionTo$message(this, swarmSel);
4 _" a0 u$ P/ ~ s- Y j1 |6 B" i& W schedule.at$createAction(0, actionGroup);
0 m1 {7 A6 a( F7 G schedule.at$createAction(1, actionGroup);! p' e! j: H% a! N6 y
schedule.at$createAction(2, actionGroup);
3 h5 d {/ ?* J8 u1 M
% |$ ~ d9 R' W6 z8 d- t0 }) F } catch (Exception e) { p+ F% i6 S. N o3 X8 h8 _& s2 G
e.printStackTrace(System.err);
) s" k O8 a! Y9 u/ E: F //System.out.println(e);
4 {, m) }9 [$ P* r System.exit(1);
) d) Z/ l* b2 W' a }: S6 }. l) \; \7 I& {
5 }0 L, Q6 i: K4 d
6 e( ~/ I% W! U& j# ?+ Y }: p8 L1 X# g/ N* D3 E9 d/ c1 \) ^& t
. q! S" k" K, |+ g4 A# U; |7 c
private void swarmSetp() {' |, t$ m) I1 \) A- H
list.addLast(new Agent(Id));
& m" g: v$ @8 o1 c' l Id++;2 U! X r7 Q3 t' w, B
}
, X# |% k1 {! e; _
5 f- |3 ?' O6 M0 L k public Activity activateIn(Swarm context) {
6 e# W1 d% A* N) x/ j/ E super.activateIn(context); H* f' N, C4 G$ w
schedule.activateIn(this);
8 r" e1 o" d& d. B$ N9 @ return getActivity();; R- s* a9 C P! I' ~
} s @! M' V+ R$ J* N: v6 q* ?
* N4 J! O$ `, ^2 W public static void main(String[] args) {. z) C' P3 W; I t# c: W4 W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" c; s# l) E/ }+ h3 T, G; l3 N* m
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ G+ B( X( O5 y: |0 ~' L' ?( L swarms.buildObjects();! X' h# O! i" s* F
swarms.buildActions();
% g% c4 q. X1 Z( h# |/ c swarms.activateIn(null).run();
1 S Y9 ?( v( O+ J% K( z8 X5 y/ w }
# X7 @% \. _: U- o3 E1 @/ d' e' i5 o- s, I6 ~
} |
|