|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 r' c4 F* t6 n$ d! g; o6 S, k( {
% g4 }; P/ \/ L* ~' g8 Y p+ X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
n0 I r- d$ B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 ^* h" m. h) \0 t7 r( D1 C$ _
swarm.SignatureNotFoundException
% B7 v9 F3 k% a _: w at swarm.Selector.<init>(Selector.java:76)
T6 N8 c: T+ w7 s! `0 V! q. r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' o7 T9 M, v, t6 T
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; o1 i7 V* d( [ Q- k( I8 V' R; W5 t/ R; }" B/ T: X7 Q$ y
8 } m/ E6 @6 d. R; H
import swarm.objectbase.SwarmImpl;* d7 u- e8 G7 m$ k
import swarm.objectbase.Swarm;+ v7 _; B* B. R5 G5 l$ o' B
import swarm.activity.ScheduleImpl;
8 `* n8 J6 ]; T* Z. g' x. pimport swarm.activity.Activity;5 i+ G" g) q5 k- u7 C
import swarm.activity.ActionGroupImpl;
" C: J! {% r8 C. y, |import swarm.collections.ListImpl;% N4 z7 X, ]. U" q* l" @
import swarm.defobj.Zone; 4 W0 c q# K/ M. L
import swarm.Globals;
/ j8 o5 K2 T4 Z1 e* kimport swarm.Selector;
; K' \* m% L% k* yimport swarm.activity.ActionGroup; 7 M6 `% l* a2 r$ t
class Agent {
) R6 `% M4 S: Y1 C1 q$ C% W! e1 b char id;4 F9 u9 {, f$ j- B7 p
+ `0 ]3 Y# Z$ t) p+ g
Agent(char id) {3 @" o/ C5 x! j" S' a( l, E0 ^3 X
this.id = id;
( j) M4 S6 A- }3 A8 X- H- w }
4 ?( m% Q+ h S" i y. [; s3 X# O
( s- n# P& t2 C4 m: q5 r public void agentStep() {: P2 X5 T+ p+ H5 D. S9 Q6 s
System.out.println(id + ":" + Globals.env.getCurrentTime());* p2 z+ Q1 Q8 p4 q4 Y
}
1 q# p" {( d& ^. P4 p5 @}
1 z) ^/ ^- J9 \# a/ E3 y! v; M8 y6 k2 ~1 Y9 Y! i' `3 s
public class ActionGroupDemo extends SwarmImpl {
1 _/ H3 t; m- V+ m1 ` ScheduleImpl schedule;$ @! I ]/ ]6 v7 A
ActionGroupImpl actionGroup;7 l a3 i( o. z- z' P( Z
ListImpl list;3 r# ~) a9 L; W7 P+ n, E
char Id = 'a';$ @! Z; `: t2 r( F8 m+ q p2 h
i& \0 p7 i+ a7 d ActionGroupDemo(Zone aZone) {
' [9 [' F- B( I1 W5 z super(aZone);
W6 [8 @1 T) ^) c/ m! k+ S4 j list = new ListImpl(aZone);7 P5 ?( |, A" }) x
swarmSetp();
7 ]) v) K! B" w, j) P actionGroup = new ActionGroupImpl(aZone);
! J! O. K9 l2 S' b; ^. M schedule = new ScheduleImpl(aZone);7 a( f1 ~$ z1 b n# S& u% e3 X4 t
try {7 f( g/ c$ \5 J p! j
Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 y+ Z5 j3 M' w" ~9 h; B* T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 D! ` Q/ U; t# F- o9 H5 h; O
4 z* U$ D6 K/ b3 R; [1 F actionGroup.createActionForEach$message(list, agentSel);
' k3 Z1 R) F) X actionGroup.createActionTo$message(this, swarmSel);' M5 a! O% h, Y2 [" ]5 F- B* Y
schedule.at$createAction(0, actionGroup);
7 j0 J4 B i; ?$ p5 p. e schedule.at$createAction(1, actionGroup);9 N4 _* H5 K1 U4 L) L' _ S' }6 F& i
schedule.at$createAction(2, actionGroup);
9 H: c9 W8 q: o6 I
( q! d. M. \- h2 f' b } catch (Exception e) {
* [7 y: b/ c X5 H& w9 H8 _* |1 z0 _ e.printStackTrace(System.err);
2 U$ z6 @ h0 _/ t //System.out.println(e);
' V5 j( X, b* K& W* b t B System.exit(1);
8 O6 K0 c8 W9 K" k0 W6 }* x }. ?0 f: Y5 ^: p, C
8 M, h4 U0 t: |2 G
# ^7 w( w4 S8 w- c& Z$ `+ r }
8 c. G5 j1 Y; ] ~6 Y1 d& J4 P: V! z- n4 n1 f/ u) w7 E0 H# N
private void swarmSetp() {5 p( F8 ^, A! H* H
list.addLast(new Agent(Id));8 y: l* f5 t4 Y: G$ j' t
Id++;
) Z9 d& W' q% e8 U2 r }# x: R7 L: y$ w& c6 Y( i% G
2 h" T$ u- w* U6 y1 _: q' j public Activity activateIn(Swarm context) {& r% z) |2 Y! B/ z) {" J- f/ S
super.activateIn(context);" a L+ e8 \5 e$ ~; u: ^2 B( T
schedule.activateIn(this);
' e- U2 j1 J: {. o" A" b9 p return getActivity();* \# Q- ^$ d# V7 y/ A8 ^- `
}
& n" \, }/ e) }2 h. a' @3 N/ Y& v, _& j/ n
public static void main(String[] args) {0 g {3 ]2 d5 b1 e' [; e8 t$ d
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" q: L9 ~- S6 r& y; M+ w8 F6 `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
x, n0 `$ k9 A6 N) I. X swarms.buildObjects();. }" j% n% \4 M$ [% N5 i8 t: k
swarms.buildActions();6 T7 f' l! w: E
swarms.activateIn(null).run();' f# a, P8 m2 P! E9 s& E
}
2 V7 H# H2 s1 d' K, d/ Y7 U0 b" u: p2 m
} |
|