|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! ` N) t7 g! W: L4 J+ e( G" Q8 h& _
7 L: e' F/ Q( Z$ A3 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 N- v& i9 I8 _8 ^3 K% V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 ?2 o$ { h! a, T6 ~8 i
swarm.SignatureNotFoundException# m6 ?& k3 P+ T
at swarm.Selector.<init>(Selector.java:76)5 ]$ V/ p6 i1 T! m& {8 h( F: o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 E3 z4 x$ n) J( k at ActionGroupDemo.main(ActionGroupDemo.java:67)# @: s& N& M1 K. _
4 I4 K9 B3 ^$ p T+ ?
! k+ G3 o( ^7 Y7 H9 W. Vimport swarm.objectbase.SwarmImpl;
8 e5 l' E6 e+ P" d4 x6 c5 bimport swarm.objectbase.Swarm;8 }* t# F' G. V" h7 I' W8 c" @9 {
import swarm.activity.ScheduleImpl; x ]8 F: G- P2 o" A; Y
import swarm.activity.Activity;
0 o8 O6 ]) O6 K# ?1 X; Wimport swarm.activity.ActionGroupImpl;
7 ^, s+ T* @/ L1 D# ]import swarm.collections.ListImpl;
0 B) m; o$ _, c0 T+ [+ f) N: Dimport swarm.defobj.Zone; 5 h$ `& u# \! ?* l X3 G) ~5 n
import swarm.Globals; \7 s( {3 z+ \' Q) l. a2 L5 @' ?
import swarm.Selector;
: ^$ j ^8 @, _8 E- F/ Ximport swarm.activity.ActionGroup; ) G/ D/ V7 F* r/ ]
class Agent {7 q. [* a# ^/ U2 a7 G' S
char id;6 a: g+ S% ]1 }3 Z
5 {0 u5 q# ^! `; a6 d% e3 H; H Agent(char id) {" ?* x" p( p+ a8 Z k
this.id = id;
0 Y) J; A# M% ~$ _5 { }! A2 x/ y5 D1 D' X5 @
$ V" l- |6 G0 [& e, T# J
public void agentStep() {$ q* v3 _+ U. \4 \, \, n3 n
System.out.println(id + ":" + Globals.env.getCurrentTime());& \; C. D! F3 d2 U. j5 d
}2 ~/ r+ B6 }$ R5 N' t+ _6 r- C0 z
}
! F; {2 z5 \0 {2 f4 U: |. E2 X4 H
, o% V) L% o& H/ R( J( Tpublic class ActionGroupDemo extends SwarmImpl {6 Q: ^8 k& Q# V1 R
ScheduleImpl schedule;! S6 Y5 b d" _8 ^
ActionGroupImpl actionGroup;
1 p! m4 ?3 ?$ T ListImpl list;5 f% M0 l% F5 V5 `3 I, C3 e
char Id = 'a';
" f+ r) P, G6 G. z& o) H M" q0 ^' d* T6 t7 M
ActionGroupDemo(Zone aZone) {
9 Q' _/ {& O6 X, _* i super(aZone);- t# W/ D# v7 N6 O
list = new ListImpl(aZone);1 e: c" D" j8 x* A2 p; K
swarmSetp();) o6 K* f! g* I& y1 |
actionGroup = new ActionGroupImpl(aZone);+ l8 U# [1 `2 i4 X" v: K
schedule = new ScheduleImpl(aZone);
1 L, ^6 R8 [- m+ T& N9 B P try {9 s/ h' m5 F$ O$ P
Selector agentSel = new Selector(Agent.class, "agentStep", false);. @: F6 R: }* r6 c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. g* f# J* `9 {# H $ f) e& y! B0 e% ?" b
actionGroup.createActionForEach$message(list, agentSel);
7 [& ^# [ c X/ Y1 K actionGroup.createActionTo$message(this, swarmSel);+ i7 `( l+ E% K7 ]: b4 w9 R
schedule.at$createAction(0, actionGroup);
" h4 Y, D, i1 J6 u schedule.at$createAction(1, actionGroup);
" c4 y- d8 j4 s3 { schedule.at$createAction(2, actionGroup);7 x3 j) @9 \0 Y2 R
5 n8 W) A& I- w9 F" n" K( L
} catch (Exception e) {1 \) t* Z4 E y1 C8 z7 [& x
e.printStackTrace(System.err);
! a# l+ {) D) j( |# r% a //System.out.println(e); k; _! l: r) a) C
System.exit(1);: H. m# K m8 }1 s
} q$ W! A$ ?1 Y) G& i/ `
, ]! J" |& H/ \2 W
$ b6 ]) A( F$ S
}
! S1 W+ K9 o! Z% {6 R6 I! A/ K E6 P1 E% X$ B; e8 W# i1 g6 g
private void swarmSetp() {
% O& x; i0 |) i0 O. T2 f list.addLast(new Agent(Id));
6 x7 e9 N" Z9 x* @" ^: t Id++;
$ O4 Q; I& L; I2 ~- T }
8 Y- ^0 l7 ~/ o9 [6 a; O2 a
# g# ~( q/ J3 L# A6 C) F3 N public Activity activateIn(Swarm context) {( @+ L7 \- X* c# r0 ]3 A
super.activateIn(context);1 _; Z; M/ X3 c) b9 U; ^ t5 S
schedule.activateIn(this);$ C1 A! k- X4 X. T$ I) R5 q( k) ?1 W
return getActivity();3 i! h6 ?: ]2 @6 D5 b' I
}; M: B$ O' r* Z9 o+ R
& [! E" z G" `8 p' `" g
public static void main(String[] args) {( _ y7 t7 @9 V' c( e& o: s3 K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ U/ g8 _5 _! T `! D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 f, @: k) B3 d1 D swarms.buildObjects();
. q7 m4 i# O7 u1 |' t1 U5 H swarms.buildActions();) _: x4 B5 a# m
swarms.activateIn(null).run();
1 K- u0 t5 z' d [ }
2 c2 Q# e6 j, ?) w s V
. t* y6 V) c$ D; V: @: u2 o$ t} |
|