|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / M+ s5 s: _" u
% u7 s' ]8 \- J! n! G+ Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! ?' q8 p: H, O3 F/ Y5 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. E% t5 i5 y) z$ ]swarm.SignatureNotFoundException
* D2 j% C7 g$ i3 M* m+ M* R' y at swarm.Selector.<init>(Selector.java:76)
; s( _8 a- _- z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 j- D% R3 u- n at ActionGroupDemo.main(ActionGroupDemo.java:67)" A5 r, |; J( ^* \
+ c" g; n$ R% M" {6 |
6 \9 E7 T: a- W; `; [
import swarm.objectbase.SwarmImpl;& y* T) D! p: n
import swarm.objectbase.Swarm;$ _: E5 M. R9 R1 k. o
import swarm.activity.ScheduleImpl;
; L6 c% j, I, a* wimport swarm.activity.Activity;
- Z5 ^) V) n1 w1 O* m$ v) O' limport swarm.activity.ActionGroupImpl;3 `+ e3 w4 I& J, V* K8 k7 A
import swarm.collections.ListImpl;
/ Y% ?7 R( h4 [! U0 l7 uimport swarm.defobj.Zone; , m6 i+ o# z( o8 T; `
import swarm.Globals;, h: _3 [6 S. m
import swarm.Selector;2 v# Q" I, R; {3 \
import swarm.activity.ActionGroup;
+ o& B ~, v6 g! V0 pclass Agent {$ o+ L3 V. j1 h- t$ i" T
char id;
- n1 Y a m3 h% e$ j2 r6 o8 e7 v% A- H% G
Agent(char id) {( j% V! g0 d8 z% r$ E! P
this.id = id;
/ R/ J' `2 G2 G+ W* O# p4 V! Q$ G }
1 }4 R* Y! `1 d* r$ K. Z i9 Z9 V% @$ i* T% L
public void agentStep() {
2 r' G1 P# g6 m$ p6 D5 i System.out.println(id + ":" + Globals.env.getCurrentTime());6 W. n. M( f, ~6 d. H
}
7 F1 f: B. j1 i7 C$ Z3 s}
6 w$ L- L* i7 o# ^) ~+ i9 g9 f
8 |9 I2 G! ~1 w- s) Upublic class ActionGroupDemo extends SwarmImpl {
2 ^% w' ^9 ]1 j* I7 n6 m+ C! k ScheduleImpl schedule;& {1 b1 I5 n& o; v8 h% y1 N
ActionGroupImpl actionGroup;4 Z; e6 b$ |/ O8 `" ?% d! F2 z% z$ _
ListImpl list;. k. D( L: ^3 t( k/ v3 a3 ~
char Id = 'a';5 l; K2 C; U0 k# c2 A/ \/ @
* U: V( e! {% ]( d1 F4 S# Y, O) U
ActionGroupDemo(Zone aZone) {
7 Q/ v5 c1 e/ }: r. b super(aZone);
; s" W4 f4 ?1 T* B8 Y8 i list = new ListImpl(aZone);
) ?* \2 r2 O- v8 G1 V8 f swarmSetp();
) _ @) h* J E8 \! R' i# k actionGroup = new ActionGroupImpl(aZone);5 D) q* I- x& {6 K
schedule = new ScheduleImpl(aZone);/ d0 R! Y; n1 @0 u( `# u$ b: W, V
try {
: L z/ X+ f8 q; `) |* ~ W Selector agentSel = new Selector(Agent.class, "agentStep", false);; \+ b+ c# W) o S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ b" {( R8 E F
1 m8 `# C( }+ ] actionGroup.createActionForEach$message(list, agentSel);0 `1 n& G8 B3 \9 b! o$ d& h: P
actionGroup.createActionTo$message(this, swarmSel);
* D/ u% k7 t4 F$ Q1 h schedule.at$createAction(0, actionGroup);' A8 z7 y' a ]# l" @/ o
schedule.at$createAction(1, actionGroup);
" Y. ]* {: U8 I schedule.at$createAction(2, actionGroup);
- ~5 n; x" L. t5 O" j) v% |* f! f% r5 ?4 ]# _9 w
} catch (Exception e) {# X( w; n5 e% K) `5 ^/ W$ E, t1 l- \! i
e.printStackTrace(System.err);, X# x8 m" q3 N, C6 D
//System.out.println(e);& U+ m% b5 v" X1 G
System.exit(1);
1 ~* `. Z% r: ^$ G' l }
" e: i8 z% Q$ n2 I4 w; o
! k; W- J+ S& ?: x+ e5 ^6 u# B1 T, b# W5 d8 Q; M2 K
}( |6 d; F# ?$ P9 }
( j! S4 \& Q6 }, H+ O/ b) B private void swarmSetp() {/ d" D5 D4 X& \
list.addLast(new Agent(Id));
# z6 S- m4 i- P: l Id++;
- C* ~" u) X+ d \2 U0 R }
* s- |) m0 Q; l m
7 A& m7 V' E) N public Activity activateIn(Swarm context) {
4 \/ Q& v# I) J E9 O) _ super.activateIn(context);
v3 j* j7 C0 O6 _ schedule.activateIn(this);# L% Z( q$ V& D% K# T
return getActivity();+ e: r; p$ B# [0 T# `
}2 w( Y% ? J$ x# u. U3 P- w* r @
* Q. @. R4 ~) L8 J- Q/ q' C5 X
public static void main(String[] args) {
) k& |1 F- f# Q8 C* p: |, J Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. R& I. M+ U5 J, ?6 a/ q9 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" u# ]# z' g" ?. @
swarms.buildObjects();6 \2 ^1 P/ N5 M, }9 s$ r
swarms.buildActions();
5 I1 S" x1 |0 V& [2 C swarms.activateIn(null).run();/ _, i( {9 D! f
}
6 P0 p& m0 c( Y& W T+ m
F. N/ U6 ?* D( b, i# g0 t* r} |
|