|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 E7 b9 t1 C, t5 f) w8 N; m
! n+ n; K) }6 {) _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* @( Z0 l" `- o2 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# L: }$ \3 q# [. \; R- G. b
swarm.SignatureNotFoundException5 h( _" V9 ?; r- W3 ~* E9 h$ O( x4 c; n
at swarm.Selector.<init>(Selector.java:76)3 v$ D8 b9 t" v9 ^3 F+ }2 t+ f5 C5 _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 z" v$ Z3 i. i9 h/ ` at ActionGroupDemo.main(ActionGroupDemo.java:67)
; B& G7 B9 c. H! a( Q( H
* n$ s9 M0 C9 v0 c9 t; G; y& J2 q+ A
import swarm.objectbase.SwarmImpl;
- l2 e M/ _# G0 L% C+ q- {1 eimport swarm.objectbase.Swarm;* T% A* L$ q, m0 T
import swarm.activity.ScheduleImpl;
& Z8 l0 |8 z: ? `( N' G7 ]import swarm.activity.Activity;0 P T9 @$ ?6 x& P
import swarm.activity.ActionGroupImpl;
; U/ C1 U% n# M% Q, {( E/ Aimport swarm.collections.ListImpl;
- e- m0 y( ?3 iimport swarm.defobj.Zone; 7 f7 v# [& c, H- z1 d
import swarm.Globals;
! S9 @% E4 Q4 v1 p8 Gimport swarm.Selector;7 ^ M) Y9 [/ k% o) O$ ^3 S
import swarm.activity.ActionGroup;
3 A5 |8 G$ _3 Q! Zclass Agent {, z6 ~3 u! b3 z1 A7 r4 ~$ O$ C+ j
char id;1 @. y0 \8 R z3 N% S
9 c0 j4 p# R! j: M( ?7 { Agent(char id) {+ p, v y8 M3 [ n Z8 `# a6 Z$ \& A
this.id = id;
2 a y5 J- F- s }
M6 N6 E+ R8 P- D4 `" b
' Q; R/ r$ ^# y public void agentStep() {) H! B5 v% o$ Z- M7 y" ~
System.out.println(id + ":" + Globals.env.getCurrentTime());
* ?( d8 G% l4 Q; { }
+ |+ w& q+ t4 z1 p}
2 V3 H- T! B& n5 i! k3 b4 z
0 L+ q2 J; n8 B, m. Y* d0 apublic class ActionGroupDemo extends SwarmImpl {
; J2 X; H/ v. B/ w% C* z' L ScheduleImpl schedule;
$ m( S' a7 `" f ActionGroupImpl actionGroup;. D7 N% |0 ], W, l! w, |) ?
ListImpl list;
$ V0 M4 e: R- n char Id = 'a';, y9 V* e9 r- j
: k9 d5 G. I2 Q$ ]) c4 ^, l
ActionGroupDemo(Zone aZone) {
* i; n* n# y( j' } super(aZone);1 r0 h0 |. ^6 s! C% d
list = new ListImpl(aZone);
l$ z; f) M! M8 I% o: X- j3 { swarmSetp();* I9 ~; L/ ?# F7 h T. W+ ^
actionGroup = new ActionGroupImpl(aZone);8 M. i& c) \1 S4 [' U
schedule = new ScheduleImpl(aZone);; ?+ c; ~+ ~7 ?
try {8 z$ D# @2 p3 v0 n4 ?1 K1 V* h
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ f7 W6 T2 ^( ?% n' D5 V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 a; _( H. ^" ~* f" I0 ` k , e G+ }" R" N8 f( T, \
actionGroup.createActionForEach$message(list, agentSel);
$ ?5 d' }, V3 m) T0 R3 O actionGroup.createActionTo$message(this, swarmSel);
. v* U4 P+ ^' L1 H1 P" l; M schedule.at$createAction(0, actionGroup);* P# n4 }5 [$ Z& y, |
schedule.at$createAction(1, actionGroup);
1 l* T& O+ l/ O4 l schedule.at$createAction(2, actionGroup);+ l5 s. _- f/ [9 M) s$ v4 t
( W' U# |- f4 Q0 i- Q1 \
} catch (Exception e) {7 O: X( V* H- V- n% ]" e- Q) Y
e.printStackTrace(System.err);
/ L8 y2 I# o+ U5 X& {. U //System.out.println(e);( r$ F' C0 M; |6 b
System.exit(1); m! x% F6 ~( ?* Z4 N
}
# |4 Z: v; P, ^5 c
]5 S5 K* Y. e# P! q: ]$ \& O) ], g
}, h7 K! Z5 q1 _6 q3 C
+ X2 B* H0 r* G; W8 W% {! [3 ]9 W
private void swarmSetp() {
' @; h9 _/ B+ G2 f) U) z, L+ P8 x list.addLast(new Agent(Id));4 h7 x% _' g. y5 s# `
Id++;* _7 y$ |; c* B+ O
}# K) ]& z0 \! i% S
) K1 F! c# D" d6 x# r, W' n. i
public Activity activateIn(Swarm context) {
* S/ F! m3 R1 g: g) |6 r9 b super.activateIn(context);
8 U5 S1 d# U- P' W* W1 { schedule.activateIn(this);
! `. k9 U% p( J+ ?, i: l return getActivity();: z7 K8 h' i* Y) G+ n# U9 W. }" D
}
) ^" R; X1 Z7 X6 p8 a, m; p" l
. e$ v3 ^" I2 N8 C9 p6 }9 A public static void main(String[] args) {$ x- O2 f4 y4 L% {2 x0 s2 Z! l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ \: y+ q" G! j, S( e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 N3 f1 u1 o3 g: K5 N
swarms.buildObjects(); c; ^+ X, l* D! X
swarms.buildActions();% P3 a9 _/ a. r" l7 E: a. j: Y9 L( d
swarms.activateIn(null).run();7 ^$ {9 o* h6 V( c- h: h
}8 v! ]. S+ Z3 A$ z
6 A* P7 S9 T0 n) |+ p2 y* t5 y# D} |
|