|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" m& F8 B9 G- c/ E) l7 C- z( J O; h- U T/ a6 b! a. a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% O+ A( ^" o0 w) `& D- t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% m+ r$ c, V2 O1 e3 {9 R
swarm.SignatureNotFoundException
' M* q5 z# G$ b( h- x at swarm.Selector.<init>(Selector.java:76)
# S. I4 O5 X9 k0 N at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ D) v3 Y# \; R5 E* C# g at ActionGroupDemo.main(ActionGroupDemo.java:67). G9 I* y3 L1 c- E
3 ?$ s( Z/ H' {' o: E6 ~2 [& e) V% x" P! q% n% U1 p
import swarm.objectbase.SwarmImpl;8 l) S4 V- @( F# W9 r. ?5 d% G
import swarm.objectbase.Swarm;- e& E6 s7 n+ q
import swarm.activity.ScheduleImpl;
% q& B4 O* q% b1 m: c* J2 ?! Pimport swarm.activity.Activity;+ v, u/ r$ W Q$ f, j7 ^
import swarm.activity.ActionGroupImpl;
0 }, v4 T( N- H& f& wimport swarm.collections.ListImpl;( B- ]: q. i, ^9 V7 U: l$ F2 p
import swarm.defobj.Zone;
; I) v! p# w5 Oimport swarm.Globals;
7 M8 S) A: m1 h& |) Vimport swarm.Selector;3 s- E" B! T# d/ x" c6 N7 t# k
import swarm.activity.ActionGroup; 3 N- n# Y( L4 f9 m
class Agent {
6 m( | v- R6 x# k8 T char id;
1 v( g$ x. B2 M# Y4 C) `' A1 M$ s" O2 p0 n; U
Agent(char id) {" S0 A$ M0 e/ u5 e0 H
this.id = id;* v4 o2 G# k6 c
}
5 R. T0 e* H9 M# Q6 n9 G
4 w# ^4 r9 m* j K1 ]3 P7 @% n( P$ e public void agentStep() {
( X0 e- N7 P$ O# k System.out.println(id + ":" + Globals.env.getCurrentTime());+ C* V k' ]; j: k$ }( R
}3 n6 ?1 L, @- s" d: c
}
- }# y8 c1 @' `$ W6 G9 u R4 r8 c0 n1 c7 j0 {, D3 _, y5 v4 F
public class ActionGroupDemo extends SwarmImpl {, `( P l5 ~1 e, X: O. F
ScheduleImpl schedule;
: s# {7 Q/ _/ W% u7 o$ [( ] ActionGroupImpl actionGroup;
; [, J! D0 T& ~. X1 i ListImpl list;
/ u( M' F: a A @1 X; s8 R$ _ char Id = 'a';
6 H% p! @& c8 s# r3 H+ t# B
/ k: _8 h5 b! Q' e' f* [( y0 _ ActionGroupDemo(Zone aZone) {" S/ s4 s: j; [6 c$ I
super(aZone);" q4 q1 `; \# F j+ X- ]
list = new ListImpl(aZone); `2 n# ]+ A, A6 R) u% Y9 M
swarmSetp();7 M0 b! v7 J5 o+ s% f% h5 _6 b
actionGroup = new ActionGroupImpl(aZone);5 S3 M9 A; p% d* i2 T5 Q) y: C+ ?9 m
schedule = new ScheduleImpl(aZone);
; @4 c9 ^8 o6 z7 G4 ] try {
* W; N e6 }7 {* }3 L* ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);
) s0 v# r- P4 t% }4 z& z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 o$ R- y* d6 r) v- o# p$ V, g' v % G$ w% L6 i+ X3 v: P4 e% U8 s
actionGroup.createActionForEach$message(list, agentSel);
( c( b; u) J r) N. i7 c actionGroup.createActionTo$message(this, swarmSel);" ~2 ^$ X# C2 d' p5 e" q$ N
schedule.at$createAction(0, actionGroup);
4 R* }) }+ X0 C U# V7 ?" Q! O; x schedule.at$createAction(1, actionGroup);( c: M8 x1 r4 x' @
schedule.at$createAction(2, actionGroup);6 O' b2 \' t; }
6 K2 ?& _" c: y3 e) S* T } catch (Exception e) {9 `- G7 k' \: P, ^3 a! Z
e.printStackTrace(System.err);9 ^ n# f+ L/ ^$ U
//System.out.println(e);
5 X& a$ _3 x& ] System.exit(1);! z& u3 m; J: _& t! M4 M4 o, T. K
}
% O# m4 q2 I; D9 x/ v8 ^+ e3 q1 @) C) G! M! O. r
6 n% Z% L3 @+ e
}
' ^6 l g$ I3 v& f+ W( z: g2 V' F; Q" o" Y O( o' P( `
private void swarmSetp() {6 z8 x- [' _) H
list.addLast(new Agent(Id));+ Z& H; m2 O/ W/ J* H$ d9 z% N
Id++;9 q2 O1 O6 i" C9 x0 t
}
+ G5 \. g6 B0 W9 t6 ?* g0 j& p
4 p( ?' h7 j4 ^* E( B public Activity activateIn(Swarm context) {) A8 Q: h* L& O$ T% g h! N3 W
super.activateIn(context);( L6 [; t" H) ~, ~" `" e; f
schedule.activateIn(this);+ F* V0 y8 r$ g0 ^- m
return getActivity();
! E8 ?/ j$ E% a3 ]5 r }
5 P6 _5 i0 T X& v% A' U. I1 X. u1 G$ B$ A% K5 |
public static void main(String[] args) {/ Y$ |7 U4 ~* f/ O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: N9 N, I# S8 k. I2 f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 ~6 ?1 U7 s- a F) p swarms.buildObjects();( R5 b# [2 `! Z
swarms.buildActions();) v, C& s5 Q) U0 h
swarms.activateIn(null).run();
5 p% A$ |( O3 v3 d0 q }9 x9 C( K6 _/ i$ U( L
+ h0 W# L" p3 y, z2 k3 x0 Y
} |
|