|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 L2 t6 D" t+ ^. u- _
& v% e& h6 J1 A# h* x/ @+ B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; v, K$ T2 X. R- ]0 |9 `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 g9 d: _: s; H7 U( G
swarm.SignatureNotFoundException& k# W# G8 z6 c' {$ b
at swarm.Selector.<init>(Selector.java:76), O+ {. q3 r' C7 V3 _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 j/ J1 X( }8 S$ C7 f+ R. | at ActionGroupDemo.main(ActionGroupDemo.java:67)
" U# b1 ^1 ^# ^' x3 U8 `3 w' U! ^1 F
5 u" C$ R7 D; e4 r3 oimport swarm.objectbase.SwarmImpl;
% }% S# S# w# c* s @import swarm.objectbase.Swarm;6 p0 m9 m7 h, ^ a9 ^
import swarm.activity.ScheduleImpl;
! \) w& s" b; C2 b4 _8 e5 K5 E& yimport swarm.activity.Activity;6 z% h9 L) t1 k) s" M( D1 B8 S* r
import swarm.activity.ActionGroupImpl;8 F6 D3 u3 ]4 w4 P5 a: ?
import swarm.collections.ListImpl;' A. z D& J6 D3 W+ n [; q
import swarm.defobj.Zone; + s% X" }2 @. q( S# \/ `
import swarm.Globals;
' l+ Z' _: |$ ^import swarm.Selector;$ ]3 T5 O( t. @7 ` B
import swarm.activity.ActionGroup;
) ~% L+ x# V( ^class Agent {! m( a2 M5 ^9 P0 A& |
char id;. |+ K' w0 N; [. [8 e, ?
/ m! M1 V- C: e* b: o: C* k7 J
Agent(char id) {$ F( N: j h$ X
this.id = id;
4 ?5 }+ A2 w! j2 J% G }
$ n" W' O$ b, C% V. q+ u6 ]4 o- z, C2 y- o' o
public void agentStep() {+ `, }$ K2 r* i- ]; i1 B" P
System.out.println(id + ":" + Globals.env.getCurrentTime());
* n0 A* r6 @' m }+ g& f+ N0 _$ v. I4 ~) y1 e/ O
}9 U( s& S8 ~3 z- w8 l. b
. V0 W9 d/ i3 z @0 |5 M; H- B# Ipublic class ActionGroupDemo extends SwarmImpl {6 W" }7 e0 O; p& F* T
ScheduleImpl schedule;1 x- b) k R2 e2 {& } ?6 Y* W
ActionGroupImpl actionGroup;
& j1 n' |& a$ R o ListImpl list;
# }2 `) P* ?8 l) ?$ @0 H" m char Id = 'a';1 p* _( E. |5 ? E0 T
/ z6 p9 k& K/ `+ a: e8 _
ActionGroupDemo(Zone aZone) {
Z( R' a% M8 r2 R+ s super(aZone);5 ~: ~. D9 f0 w
list = new ListImpl(aZone);/ Y O5 E9 n' K8 c! N2 O
swarmSetp();; P' m' S! _7 L' O+ Z
actionGroup = new ActionGroupImpl(aZone);
: g& W: E/ M2 v: ?# s. p schedule = new ScheduleImpl(aZone);8 G$ H! {0 F0 u0 e( @0 r$ c! W& P
try {) P) ?* i1 m( S1 n1 |, q/ b) R E$ T
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 e2 n0 D! B" k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ?1 I% ^. D& b+ Q$ b* M* } & y7 P9 w9 \7 z* p s6 d
actionGroup.createActionForEach$message(list, agentSel);8 h' T) a d8 |3 D
actionGroup.createActionTo$message(this, swarmSel);8 v6 E+ B- ]0 d" \3 k( C1 b" E
schedule.at$createAction(0, actionGroup);
* e. f& t& R+ m6 v6 j schedule.at$createAction(1, actionGroup);9 ^- N; G2 A5 S) A- g; v4 X
schedule.at$createAction(2, actionGroup);* k: J; t, z$ o' Y# i/ [2 I( ]; M
# n' t& L$ ]5 C D } catch (Exception e) {
; D+ F k: l: ` e.printStackTrace(System.err);
$ E( A3 K* F$ b5 U //System.out.println(e);% j3 P; n) u. I+ a2 N; T* J/ x
System.exit(1);
. z; J1 M* X4 [( u5 B/ F5 M }2 p5 l) u3 |0 {+ o# s
7 P" ^' |' _! R1 O$ Z- A
9 k+ s+ [4 W# E. R' n) Z x: P2 @; d }
' M! a" @: x2 G8 e& X" |+ p) B6 }$ Z2 L2 S% k
private void swarmSetp() {
: x, D7 A+ e. A( z8 _; M( R' { list.addLast(new Agent(Id));* X6 V* k) D% H
Id++;
3 J5 ]4 m3 [; X+ h. S }4 Q( H/ a: q& f1 H6 G
) ]: r) }! [2 R8 Y" { F) C2 o3 B- J
public Activity activateIn(Swarm context) {
, @" v/ @+ K# P2 g& A super.activateIn(context);! Y7 { u1 C1 M' N
schedule.activateIn(this);
' H' V6 s8 H# L( w6 T+ d) j2 F% l( L return getActivity();% z+ h1 Z8 n5 k# F A% T/ v* G" J
}, W, D) p! m0 E* w) K6 }
+ p5 F- Q! a2 y7 u! j* ^/ U1 c
public static void main(String[] args) {
# f6 l& D4 [/ I0 q0 n4 U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* z1 w- f1 V" N! U, r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* p2 j. W3 _; a4 r8 A1 l6 ?
swarms.buildObjects();. }$ a) C# ?3 z$ l+ D, s8 Q' ~
swarms.buildActions();
# |$ x5 _8 B5 Q! [- s' R swarms.activateIn(null).run();3 o U/ L, _7 @2 i( B6 N4 s5 y& {: h. P
}; }& d* U+ r- l: c7 G; \
5 j1 W( q" y# y, p' t' z: K} |
|