|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - C, E$ p! H8 r
- J" X, j& L* }2 H7 o. w. M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 G3 R8 |9 O. s7 O3 R. o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." B/ A/ \2 s3 Y( i ^0 x0 r& n6 Z5 j
swarm.SignatureNotFoundException% K% i1 T4 `& D% p! R4 p. ? p
at swarm.Selector.<init>(Selector.java:76)+ M' G, ^- j0 O! E6 M8 b+ f- R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# r% b1 F* ]' C7 G at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 m8 X( K) G0 Z
, q8 ?# F- E, K3 F/ r* ]# j) S: e
# t1 X+ m! m! x# b1 Cimport swarm.objectbase.SwarmImpl;
1 M5 X' d Y* t7 F% b0 `& U1 Aimport swarm.objectbase.Swarm;
N9 n6 }7 o0 X/ Mimport swarm.activity.ScheduleImpl;
' V! Z* J" F# t, ]5 W" Bimport swarm.activity.Activity;
2 k0 A, s4 h' o& l: L$ Zimport swarm.activity.ActionGroupImpl;# A, t8 U0 J- f M( F7 V8 ?
import swarm.collections.ListImpl;
L, Y5 Y8 k6 c) G: |, w7 G! U. Nimport swarm.defobj.Zone;
: D" k; i* a3 V9 o9 C* z4 [! Z- Cimport swarm.Globals;; ]) w6 s9 ?) {; V
import swarm.Selector;
7 l( @0 p% Q. Limport swarm.activity.ActionGroup; ( q7 r8 }: K R: z% r& W. V
class Agent {
" `4 [6 z% r4 H' n8 u char id;
' w7 C4 d$ U. a, O) v7 y; Q, b) @/ D- K8 T
Agent(char id) {- a+ ^" J4 D7 J+ \% y
this.id = id;
2 N( Q' Q- y. L8 a" x a }
% `" i3 U8 H. z* b
- ]4 c0 i( B8 i- E* i public void agentStep() {8 n# j& x9 v' c! ?2 ~# d
System.out.println(id + ":" + Globals.env.getCurrentTime());: ?8 b5 Y4 z. h8 G7 Y
}! E% w, v* c- m% J
} a, F9 ? ~1 L" g& [. v
$ _. Y }& w' t1 i& fpublic class ActionGroupDemo extends SwarmImpl {
7 }6 x; C4 D7 h4 }$ o1 u; m ScheduleImpl schedule;
; u- E8 p/ z! N# X W4 c- A ActionGroupImpl actionGroup;5 e7 u3 q% H j" |
ListImpl list;1 }- @& O H) Z$ R; n8 H8 r" `) m9 P
char Id = 'a';
4 {: p5 ?$ n3 z- U, m; `. z: e: J. y- @, ]- g6 P( t
ActionGroupDemo(Zone aZone) {
2 W9 W T6 T2 |, d" H super(aZone);* u8 y& }. l- T: e6 J
list = new ListImpl(aZone);
1 F9 ?# Z3 Q+ y) T; I swarmSetp();. Q0 ]0 j& L+ z6 W2 [
actionGroup = new ActionGroupImpl(aZone);
7 ?% u* h2 H% E schedule = new ScheduleImpl(aZone);
2 r, ~9 G0 y3 X4 i' O try {
% ^, O" ?& I4 H0 Q* P- L% o p Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 _, e1 z3 H! R9 M+ q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! R6 W2 W q2 z% P
6 ~9 O d( G; L }% W$ T
actionGroup.createActionForEach$message(list, agentSel);
8 }1 w; E3 X$ o0 w. g6 N* O actionGroup.createActionTo$message(this, swarmSel);
; L- y$ T' E v9 ?9 ]2 O4 } schedule.at$createAction(0, actionGroup);0 e' l; i9 Z0 c$ r# f( x
schedule.at$createAction(1, actionGroup);5 l7 V x& v, U1 i' Y" o
schedule.at$createAction(2, actionGroup);
) X7 r9 k a- S) W) t" o, N, o
# i5 e9 j7 |. q# m5 T C' W } catch (Exception e) {. F' T) x2 n+ e& D- [$ F) k2 i' ^; A
e.printStackTrace(System.err);4 `2 R4 M- D7 C$ z: B- J* y* v
//System.out.println(e);* p8 h' a, E: g' [6 K
System.exit(1);
- e1 \- b& @6 f }
1 ^ }3 k$ M3 z" j8 ?, a
& i9 J1 Q- ]4 k9 l8 P- a9 D3 O- I9 A. o" S, G/ p
}
2 |3 k8 y9 p2 l; K- e
! o( R/ [7 q6 b' D1 J& |: \+ C private void swarmSetp() {
. b) g o. g* V$ r list.addLast(new Agent(Id));
) I! f% O1 M, B Id++;6 K, c) Q/ F0 R4 W
}% Q0 H! _; `/ g! q, s
- _1 n+ R' R- s0 o" ~/ W. d
public Activity activateIn(Swarm context) {& l6 F1 x) m4 p ~
super.activateIn(context);
* H8 a" G' T' K schedule.activateIn(this);+ ?! n/ H1 K! u% n5 h. Y' @: p- ?; w
return getActivity();5 [9 S% h; S( r( d |! A
}
: c- j9 U& l/ I7 Q: d9 B
$ p1 i- a; a4 }! ] public static void main(String[] args) {
# o% C* ]: O! q$ f6 P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! B+ k8 S+ X8 F+ t% F0 O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) U1 o- ]1 R0 i) T swarms.buildObjects();5 R3 |! I7 A, B' a! G ~' q/ W7 `) ?
swarms.buildActions();
4 l% X1 ^3 I. r+ v! M% d3 y# \ swarms.activateIn(null).run();
6 a. k, k' x; V# Q }
2 G$ e, E0 Y. e% O
9 ^' F0 {* M8 z! l} |
|