|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( T. U( v! t) X3 X
1 a k" R) P: h9 g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; X8 a; [8 U" e6 o5 w! _' h8 `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 O) Z" }& U/ L* t' j
swarm.SignatureNotFoundException
8 N$ v/ [; J- S at swarm.Selector.<init>(Selector.java:76)
- i I1 Q* U# t9 q R1 M$ ] at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 R% X: P- y1 o6 I: {& Y; e at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ x, t7 O" x+ E2 b) a- q. Y9 w \6 q, t
: R' I& m: y4 n( n3 iimport swarm.objectbase.SwarmImpl;3 Q: ^+ z H6 K! V# N, Y
import swarm.objectbase.Swarm;
) W. h- D! C* N& Yimport swarm.activity.ScheduleImpl;
/ K) i" J/ @* L* ?& Vimport swarm.activity.Activity;
% W4 a j2 b; x b4 T$ g' wimport swarm.activity.ActionGroupImpl;
/ E8 o6 ]* E5 simport swarm.collections.ListImpl;7 D9 R* i# W! F2 h
import swarm.defobj.Zone; , O `( U& m) J$ y# c
import swarm.Globals;2 h1 M/ w* j; v9 g5 d8 j0 D, u% E, k
import swarm.Selector;& e2 X: |/ F: h1 ^5 f
import swarm.activity.ActionGroup; # t, U' v$ [' P' f7 C% B6 p
class Agent {! K% B$ O" v. {! _, ~
char id;/ t8 B7 s3 R1 p
. \' e' ~9 ^7 H) A; M2 I4 ?- ~+ p& M Agent(char id) {7 f2 S/ j# H D' ]9 V5 ^" D
this.id = id;% g$ ]/ {+ q( Z: C2 a2 d
}6 K- d6 b; R1 K( e
5 O. p+ G& e% e6 p( _7 F
public void agentStep() {
) }* s% g; p! N2 i8 I6 N System.out.println(id + ":" + Globals.env.getCurrentTime());
/ I+ J6 N' l" t# ]1 M5 ` }
X. @" `4 [" M, n8 a; g}- [& g+ {$ z6 i# a
& y% @$ h: Q- d+ A+ `
public class ActionGroupDemo extends SwarmImpl {
* Y# p+ h: h; K$ w ScheduleImpl schedule;! }5 P* }: [0 ^% a1 X: m
ActionGroupImpl actionGroup;
/ N( d" ^: T/ X Z8 f* R/ ~ ListImpl list;5 g6 H: Z' B/ K! H' b p) T
char Id = 'a';
; x" k: B, b" ~# d+ s7 S; u% M+ Y( n4 a$ z& w
ActionGroupDemo(Zone aZone) {
4 X/ u- Q$ s8 N7 [( x* G: h. w. r super(aZone);
8 l6 k4 m+ P$ E! D; }) N list = new ListImpl(aZone);
" D! x9 u! `+ K swarmSetp();
6 R% C# w# H8 E5 @- ?, i actionGroup = new ActionGroupImpl(aZone);' h$ D k7 W) t# t( X \
schedule = new ScheduleImpl(aZone);
7 d$ D5 ^& W6 I5 e$ w( v try {% m+ J; t+ k1 J6 L
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 u7 X5 X4 W9 M% |7 G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 ]! R* Y- r3 [% Q# H# t+ @ p s
! D' c) ]$ D0 L actionGroup.createActionForEach$message(list, agentSel);
8 V% J# B" Q. h" i+ q+ k actionGroup.createActionTo$message(this, swarmSel);
5 E' o0 j5 t; A# k! r N/ W schedule.at$createAction(0, actionGroup);
, U+ Y/ g. q! _1 g5 G schedule.at$createAction(1, actionGroup);
- m5 u& x1 i$ p5 Q0 B6 E! o9 G# ~ schedule.at$createAction(2, actionGroup);
D5 t* y7 X0 l8 L3 Z" R
, x) k' y% @2 @ } catch (Exception e) {
; L) ~6 X9 a9 \0 h e.printStackTrace(System.err);" p3 x6 m- \0 X6 _
//System.out.println(e);/ b9 P8 U* [- c0 H- P: n, W' y
System.exit(1);' z( g% M( q0 h8 l
}$ q' q- D( g. M \4 l1 D5 B5 T
- w- Y7 R3 J8 N, {! O) Z& K! k2 q8 u" p( b# A' M* B4 |: F, ~3 J
}
& f. O' z- j: y1 V5 U/ |! e& @( O: F2 C( U
private void swarmSetp() {9 }3 V6 ?, b7 L; n
list.addLast(new Agent(Id));
& N/ c* |. R- e5 d; |# h- Q. O Id++;
: o& N6 s$ }+ }. Z }
7 S1 w- [' y' V+ m9 J6 k7 k+ p+ y( b+ K- U8 h* E( K: V
public Activity activateIn(Swarm context) {
6 k$ K/ \* Y$ | Q super.activateIn(context);8 R3 z7 B) x" V( b+ X% L F6 v( o
schedule.activateIn(this);$ E/ `# ]( f M8 d( l* a
return getActivity();. {( W% o3 y+ |) w
}
5 ^3 L* T: F- k/ R/ R3 a5 }6 F4 H" W. T) E* j4 F& T0 q
public static void main(String[] args) {% T5 G9 i# ~- o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ^8 R# H0 B7 d! @& x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# I; I2 U8 l, [: O5 D
swarms.buildObjects();
r/ X8 d# Q: Q3 n1 U swarms.buildActions();
6 c# w. {5 {# K, v; P% |' e swarms.activateIn(null).run();. ^$ T$ e8 Q% \7 u- B5 E
}
: A7 l, X7 K' T1 n- x5 d; @: T! V: i) }6 [% {$ k) N
} |
|