|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 I+ v; R5 f0 R* @% R6 D: u2 X. B
7 @2 `+ j }& l3 \! b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ ^& r" I* m( \. g$ t- U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 T: B% W, M+ ]. b! J: X* uswarm.SignatureNotFoundException
( {) V; [; A1 [0 h+ }- b at swarm.Selector.<init>(Selector.java:76)7 t& F E/ G0 g" G$ x7 C/ ^) f% j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 K: L: y2 |- h4 Z& J0 b: z0 x! ~' Q9 [ at ActionGroupDemo.main(ActionGroupDemo.java:67) ?" F# s5 r& N, `+ V& J
4 T0 }# t6 u" z. K% Y9 F6 ]: H7 U5 }% f0 `
import swarm.objectbase.SwarmImpl;
) Z& m: f4 M4 A" k, t# bimport swarm.objectbase.Swarm;0 f- W9 }# {, s: {# v R; h
import swarm.activity.ScheduleImpl;
$ [4 G6 y9 `1 n& M2 |6 q# L# Aimport swarm.activity.Activity;
1 G7 c4 ^! W9 `; a2 J" Ximport swarm.activity.ActionGroupImpl;/ F$ W; }6 b# Z
import swarm.collections.ListImpl;
$ m/ Z5 H1 f% n3 rimport swarm.defobj.Zone;
1 Q; |# Y X4 o' kimport swarm.Globals;$ p( E; \& y3 N! _
import swarm.Selector;* [+ j% j. Y/ i. [
import swarm.activity.ActionGroup; 5 ~( ~- G r; ]" `" R
class Agent {
/ q; O5 @' M+ q9 K6 H char id;1 A, ]: ]- O3 d' `9 V, b1 ^
; P" x( { x$ @3 V" A
Agent(char id) {' Q0 y8 E/ G1 ~" [, n
this.id = id;
( B; e6 p( B) e6 Y3 r2 V }
% {$ G# O" G# y D, M# O- B& z& m5 ^& d, }/ S
public void agentStep() {& P% q0 x3 f; b6 Z7 R4 t- p) A
System.out.println(id + ":" + Globals.env.getCurrentTime());
; K4 ~; K, L1 `% {) f }8 B# K, `8 F, I4 k
}
% D- H) B9 X0 P2 T
. p, `; h3 @) d1 [5 E! n4 R0 {$ gpublic class ActionGroupDemo extends SwarmImpl {
8 ^6 o. e! ^6 ~4 v ScheduleImpl schedule;
8 a7 @8 L: X7 ]% s% l: F0 B ActionGroupImpl actionGroup;
' u1 ]5 u5 K: D) q0 Z ListImpl list;; ~! }! l4 M" I. Q
char Id = 'a';# ?# h) o* h2 w: ^2 B% Q
9 ^; I0 B3 G% a; j4 j( L
ActionGroupDemo(Zone aZone) {1 q4 w b) I+ s) C1 o2 `
super(aZone);
2 G( v3 m0 `. G3 W9 \& ~' t list = new ListImpl(aZone);
# W; Q# y$ @% f6 L+ N4 h swarmSetp();
- `8 d9 t) p# V$ x5 s actionGroup = new ActionGroupImpl(aZone);
8 g! |7 u+ b' u8 Q+ g$ G schedule = new ScheduleImpl(aZone);+ b& Q7 e6 i' j# s% d3 q2 g
try {3 s( n0 Q5 y2 X/ G' Y9 Z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
% s1 j7 D# _' n6 O Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) z; ?, X5 H3 n e ~7 w- y
t9 j; @( y! U* ` Y actionGroup.createActionForEach$message(list, agentSel);. Q( j8 N* n# g) E0 f2 k/ Y. n0 l5 Q
actionGroup.createActionTo$message(this, swarmSel);* ^1 E1 @1 b- U; v% R# t7 s
schedule.at$createAction(0, actionGroup);6 n; d; W9 w) v8 r# W* I& h
schedule.at$createAction(1, actionGroup);
; b$ h9 V- X3 }6 Z$ D' v schedule.at$createAction(2, actionGroup);4 x1 d3 U. z/ x3 T
7 A! x8 Q! a9 f# ~! t t3 E
} catch (Exception e) {, D9 o# Y( i+ `4 N6 }# c, v
e.printStackTrace(System.err);
: X1 M$ t2 a* V: | //System.out.println(e);5 b( S( _; H* D7 C$ L% [+ G
System.exit(1);
9 X& ?- u6 N1 ~6 p0 R B$ I; k% N }
8 X& m6 `- h3 r, ~
4 E, H j$ J! e1 a+ X# `$ ?! n/ |4 g7 R
}% e% }- `5 {6 [+ k, H7 M# B
( C; B- ~- X2 q5 M2 B0 S) B! V
private void swarmSetp() {& K+ {( d; F4 n/ ~1 ^" H& s
list.addLast(new Agent(Id));
. J% Y# }# U/ w3 y7 ?5 g! X! h1 ^ Id++;
4 s2 C. U8 S6 ?* h% e4 u+ }" D }. ~. E. x) j6 I# \
' @; H, i. `* W! c+ V% `
public Activity activateIn(Swarm context) {& [" V3 K( |% t7 ~ R
super.activateIn(context);. K5 M# ?' }% }& e0 @" d
schedule.activateIn(this); M$ k% |& h/ ^! @* E
return getActivity();( c2 S- G( T/ |" B( t% Z7 _3 z) b
}
) e* n( m# W' ~9 P6 y' Z6 `% t3 c
; h5 r0 J7 H5 S* ]& C, F# T$ I# D public static void main(String[] args) {
; i: b3 q' X5 g4 o9 T, ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! i. @* M6 Z) \$ G8 B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( o0 S" V3 J* j* z
swarms.buildObjects();8 h* C* _% ^9 K3 B$ q3 n# ^. V
swarms.buildActions();
# l! q' j' {* W$ b* V# R swarms.activateIn(null).run();* o. P+ U6 A# n9 ` _! u
}
3 ?& |9 ^* B! D- Z" P4 V/ Z5 u& P' ^* ~: c7 `+ q* ^
} |
|