|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ L" M% \# F. j2 ~
0 ?. ~% H2 l6 H: e9 N: t" |9 ?7 M% \0 L& m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% D I- b3 A% O0 i. f/ v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. M7 ?5 {2 E, v; z# E4 O
swarm.SignatureNotFoundException
' v& y! ?# ]8 v* S7 m& N5 X at swarm.Selector.<init>(Selector.java:76)
4 r/ o5 e9 w3 u7 q5 W at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 @' y/ P7 {# Q& e$ n
at ActionGroupDemo.main(ActionGroupDemo.java:67): R& `8 Z9 D6 I# a" _. P: x
+ A: _1 k+ I9 ?9 {
- Q, A n4 I9 u+ N" jimport swarm.objectbase.SwarmImpl;
+ t2 m3 X w; ~import swarm.objectbase.Swarm;, [1 O0 M" j$ }% B) L
import swarm.activity.ScheduleImpl;/ b7 K8 E9 H8 ~* A3 D; R
import swarm.activity.Activity;! I" m* z1 ^0 i* X0 S# t
import swarm.activity.ActionGroupImpl;2 w9 {0 t+ Z& P* I7 `5 e6 x: m
import swarm.collections.ListImpl;8 ~% ?* j/ {$ c K6 i( g6 o
import swarm.defobj.Zone; ; k( u1 ~4 }5 ~: y& R- i
import swarm.Globals;
5 d+ I9 }- k7 Fimport swarm.Selector;
7 I* z9 N; _ }! B+ `. B* j$ n6 C O' cimport swarm.activity.ActionGroup; % b8 V' _% x/ M; S* F0 R. z! T
class Agent {
. v% m- B9 i! p1 v6 g& ], I Y char id;
. F6 Z: g, k& R' O3 G6 z2 g9 n5 {6 Q% T9 g- ?( S
Agent(char id) {
2 z i& ?! x' B K2 N- [' x/ F this.id = id;( z& L+ p) h6 H8 e# o! \% {
} b! Y# j& ]1 O. d4 E
( w+ C5 `# g6 X0 \7 v
public void agentStep() {
/ \& Z, T2 [% I" F* B. | System.out.println(id + ":" + Globals.env.getCurrentTime());* z' ^( ]. u: M+ h$ r
}
0 c( Y% X" X: J}
! R/ k5 e2 [' Z' \
8 f4 N9 l" q7 D# k `! P; Qpublic class ActionGroupDemo extends SwarmImpl {
. Z- u( K! A8 @( r# e ScheduleImpl schedule; ~' `0 T0 j6 o' g
ActionGroupImpl actionGroup;
. S; k" r5 M& D# R ListImpl list;
) W# g: f. l. y- g char Id = 'a';
1 p0 h# v y& v, d; z3 H, R! D Z
ActionGroupDemo(Zone aZone) {7 I0 C" T5 y$ {+ n0 V( ?; y
super(aZone);2 h& L6 \ @: C7 F3 n* r) {
list = new ListImpl(aZone);
. G+ V2 M5 P. B swarmSetp();
2 X$ D* d# m0 b3 P8 {1 H actionGroup = new ActionGroupImpl(aZone);
' d% U w$ p4 ]+ k schedule = new ScheduleImpl(aZone);
5 s1 B7 h+ h, D; P+ u, J' E& D6 p. k# t try {% f( f+ w. b6 C# F$ u A6 m
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ z5 I0 o: V& y. v8 ?3 ~) z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! C D& t, H( M. { ( c2 R# _. V2 b. ~; Z m" V8 m
actionGroup.createActionForEach$message(list, agentSel);# g# }4 d7 h" R# _4 N% e
actionGroup.createActionTo$message(this, swarmSel);
3 k4 H- U4 _+ _. S schedule.at$createAction(0, actionGroup);
- \4 D5 G) E0 f* m6 H: D$ @1 s schedule.at$createAction(1, actionGroup);6 l. N% n1 h6 u8 \; i
schedule.at$createAction(2, actionGroup);& a& F+ z! V8 |! ?! o( n3 }
5 L. J2 }) O* o H4 ~6 G0 N
} catch (Exception e) {9 [0 u/ ^" R3 \/ H7 a
e.printStackTrace(System.err);
5 ?( B3 B. `7 h9 ]2 d //System.out.println(e);9 T- }8 v. n% g* |8 r
System.exit(1);
0 ]( }$ z% @3 s( |3 j1 I, L }
! _3 `( B" {; _* d: x3 _# R7 m% Z1 P# X4 T: H
7 G% ^$ Q8 [9 B, [
}) L! H M1 Z( S8 E4 ~: {$ E8 X
& w* M1 X. y% p0 Q6 z) R+ Y! a private void swarmSetp() {
' X$ i* W2 R- X/ m9 Q* e- ]. ~ list.addLast(new Agent(Id));" `* N' n. n( r/ d
Id++;) ?9 C2 ~6 V# \; V, G; m" y. j
}
) d; s" o8 M+ z# b- Q5 P$ ^5 M- \* C- c4 G* B
public Activity activateIn(Swarm context) {
5 N) I7 R6 {: o: |! ~- S super.activateIn(context);
0 H# f8 q+ l# K& c# q& s! T schedule.activateIn(this);
8 H# C, N+ S% P% a3 g! a return getActivity();
& M4 u. b& P6 \5 \) k9 @ }1 c, ]* _- Z4 @) k' Q% W& J$ _( a j+ P
& Z3 n8 O+ J0 @* h, o+ S& Z) h6 B& m+ x public static void main(String[] args) {
+ v% Q0 n7 t- h i+ t6 P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, |2 Z$ i$ s) M) B( @# [/ j0 l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ p/ I- L$ x; _3 o1 f swarms.buildObjects();0 s4 O6 f: ], |/ h# b# ^
swarms.buildActions();3 c4 X+ d0 _; A$ l/ Y! v' I, ~
swarms.activateIn(null).run();
: V0 U0 L j3 {$ a a: X }6 v7 L. I, x) i
6 C k# I+ W) \8 Z q0 ?
} |
|