|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 C0 i+ i; S* _5 r1 H6 J5 l7 K3 v+ x; w0 h* N: _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ B+ ]' ~$ U' Y: n& w8 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ O+ z p0 I" l9 bswarm.SignatureNotFoundException
1 i- f: N" m- a+ ?/ j, { at swarm.Selector.<init>(Selector.java:76)
z: S6 @( Z7 m* r' w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 `* q' m- E% ]8 q1 C
at ActionGroupDemo.main(ActionGroupDemo.java:67)/ `( b! e" g6 e o
5 W4 ] V" H, f" t
: F) T( N0 ]. V% F$ r# G mimport swarm.objectbase.SwarmImpl;
( g& W) L f0 b. s. m. Oimport swarm.objectbase.Swarm;
) L& _9 V9 G( z- qimport swarm.activity.ScheduleImpl;
5 F2 Y, f) F6 Wimport swarm.activity.Activity;: M( p3 z5 f B/ a1 \ q/ @
import swarm.activity.ActionGroupImpl;/ u4 L' n: |4 O5 ^" o: z
import swarm.collections.ListImpl;$ \( B7 h& D5 i5 m; z3 K1 t( G
import swarm.defobj.Zone; # b1 m# Y; T$ ?' j" T
import swarm.Globals;
8 `' L, L0 T3 h6 [. gimport swarm.Selector;5 j3 i* f; x, b5 \3 n; j
import swarm.activity.ActionGroup; 6 Z: f* W3 A7 u5 y$ s5 Q
class Agent {
5 M$ g9 \9 E& s6 c char id;! v5 y8 ~' ?1 {& O# M( f( L
2 W$ J3 Z+ S2 n% v I* }( m h4 R. m Agent(char id) {. c2 D0 z$ J5 M, x4 A
this.id = id;
7 f8 M+ e: _6 [: |3 h+ D }" R. o) l( l9 q7 `& M, z2 o
3 } g, @, q' R3 i" f5 A public void agentStep() {1 t4 O6 z6 U" m6 H4 b
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ u7 Z# |6 n8 s! H( \ }# t$ S: i0 V& Y7 ~/ z
}
4 s* Y% m3 y3 U, ^
" Y0 h, z- q3 i2 N' M+ ]public class ActionGroupDemo extends SwarmImpl {/ ^7 v+ R" D. r$ U* ], h# j
ScheduleImpl schedule;
" ^3 |+ j% N+ I+ Q ActionGroupImpl actionGroup;
. X9 L( i3 p, h) J) d, V ListImpl list;
( V5 A' U1 H# M( M9 x; B. M' x char Id = 'a';7 f+ }& d: e* \. f5 r
" s$ Y3 E0 A1 j3 U" S* Z7 g ActionGroupDemo(Zone aZone) { {+ U, |5 r- m2 @5 v" M" o
super(aZone);
/ x& r8 r1 D( Q# R1 s( } list = new ListImpl(aZone);
# W' y5 ?0 t+ F7 H# j0 i k# Q* l' } swarmSetp();+ P! k3 i0 M+ N- M
actionGroup = new ActionGroupImpl(aZone);5 X0 h! P7 H- R9 i3 R
schedule = new ScheduleImpl(aZone);) r) I2 ]1 K3 v3 ~1 [
try {
3 |- X; Q+ M0 B- | Selector agentSel = new Selector(Agent.class, "agentStep", false);
& M0 v: J7 r! _- y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: M: w8 Z+ F6 w5 h
+ S- _0 N( H0 b* B2 _% P0 K0 z actionGroup.createActionForEach$message(list, agentSel);- }3 F5 @0 M1 D4 u, d" O
actionGroup.createActionTo$message(this, swarmSel);% x: v3 Z# s t/ E/ z
schedule.at$createAction(0, actionGroup);
( g4 x- ~, n/ G, R8 a: Z4 v schedule.at$createAction(1, actionGroup);
- P% j* c/ \. P% B schedule.at$createAction(2, actionGroup);
8 T/ j7 G: `3 R) M3 B9 X: O4 @' m: [# L+ Y% H; H: _7 _5 H' ~
} catch (Exception e) {
; T0 L/ R, C2 r- a2 [7 ] e.printStackTrace(System.err);
" w& q! a! d! S4 | //System.out.println(e);; U$ C# O$ q% q$ L+ v
System.exit(1);
2 V9 G ?- ^4 a) @( M4 Z }
) ?# z. P- x( Y8 Y/ T# s
. L8 g( W- Q1 n& f( b/ v3 }7 q4 N$ `5 Y; U
}
) e, \! a0 L# J9 ?
8 X! A" L! v, U3 R$ e private void swarmSetp() {
X9 o3 l5 \9 W& s! e list.addLast(new Agent(Id));; X; u$ c5 ~* m9 G7 E
Id++;
/ r7 O. `; o' P/ E+ [3 \ }
) i4 o, Z! K- T2 A+ y& @2 B
Y' @5 ~- x! V" E1 D1 d public Activity activateIn(Swarm context) {
& L/ v7 f# I7 o# p( s3 ^3 P: b; a super.activateIn(context);
7 w, `" ^1 z! C2 @4 F schedule.activateIn(this);0 t$ e7 \3 [$ ~; j3 R
return getActivity();* P9 v7 T$ |2 d0 g* p8 F, M5 T
}. `0 Z @* s6 S# k# }3 I; @# {0 ^2 S3 Q1 S% c
1 x; X( [$ d1 X6 S8 F
public static void main(String[] args) {1 A1 u* D1 @, U% j+ @+ |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ D. R6 [& Q8 f" q1 W U, ^0 L
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& | s5 j* K) I9 c/ q5 } swarms.buildObjects();! e8 z3 g# R9 S$ m% d
swarms.buildActions();
( Y1 ~5 P6 |! O3 i0 \7 x5 S/ L+ s swarms.activateIn(null).run();% f' n9 _; }2 U6 q9 N: A3 n
}8 l# ~! w& |" C1 Q& U N4 F
, ] w7 @' Y+ z( G6 `8 h
} |
|