|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " e" d- U6 T2 W2 s" P
) _4 L( m: {% G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 k, i7 R' S9 C9 b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% g: X# D6 w8 T# S ?swarm.SignatureNotFoundException- p6 S/ M4 |% u( ~6 v
at swarm.Selector.<init>(Selector.java:76)
1 u \; y) v& b* `6 v at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ r" u: Y' X: E! N/ _+ J& ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 W+ [ o9 j1 R3 b7 W
& U: m) s' Y1 O% a ~' Y. \. \0 s
* H0 A6 @; ~8 E9 ^/ m+ z, H
import swarm.objectbase.SwarmImpl;
) G2 x4 ~: N8 b/ j, t2 C2 Qimport swarm.objectbase.Swarm;
' p3 M% b: Y/ K5 W2 i" s) Y0 Dimport swarm.activity.ScheduleImpl;
/ g8 Y" i$ q+ t0 l( U5 k5 ^import swarm.activity.Activity;; Q2 V; c% F1 G! B
import swarm.activity.ActionGroupImpl;
3 D: J5 M7 n- ]4 y" j1 himport swarm.collections.ListImpl;1 }$ B2 m4 X" C( }' y4 s
import swarm.defobj.Zone;
* q( D+ A0 k& [" r' _import swarm.Globals;( R8 G2 r3 d7 v7 w
import swarm.Selector;
- |( A& F+ F" \( bimport swarm.activity.ActionGroup; + W/ _3 { W9 }
class Agent {& {7 }* ~) W$ [' {
char id;
) S; B$ I7 b5 i( ~
; R" O% ]# v; ? k- P9 r Agent(char id) {
- V3 l- {8 e! D& o3 X this.id = id;2 K/ k9 O: i( C: [8 n* r6 X) ]
}: k( m( W% { `" {
C3 W# C9 \- D) g+ q5 I6 T public void agentStep() {
4 V* m" J" E# Q i/ w/ _+ u, r m8 G7 R System.out.println(id + ":" + Globals.env.getCurrentTime());
; ~- R6 v, x- A* l }) ]. q0 H6 ~8 c8 d6 k
}
0 m' Q `2 @& Y- w
/ y5 E2 a6 y0 d; z" ]public class ActionGroupDemo extends SwarmImpl {" R' z. B! K3 ?/ \( V' v
ScheduleImpl schedule;6 S9 `5 z' n$ u* y6 `. \
ActionGroupImpl actionGroup;8 f3 w. Y% T3 ]& A: ~
ListImpl list;
+ k0 Q1 P& i+ ~8 p1 Z$ P1 R char Id = 'a';3 t T8 V& I5 a: A9 I s9 d
* B1 g L5 J2 x) e- s8 x7 f
ActionGroupDemo(Zone aZone) { Y6 r& G6 J) B* d
super(aZone);$ L0 S$ c' e% s; M
list = new ListImpl(aZone);0 G, k( @7 g: w/ I
swarmSetp();& b" s6 p; q2 I& i' n* R
actionGroup = new ActionGroupImpl(aZone);
0 ~$ ^8 J% O3 @1 l z3 U+ o& Z% k schedule = new ScheduleImpl(aZone);9 l2 X# O. y; j- @' Z
try {* p6 p7 t+ O& ^. K* Y9 b; ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 ^! i" b% O1 y+ P" p& Y8 D$ I# P
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# F- x% v+ z8 o1 ~3 ~ V
& z8 R5 [# q5 _% e actionGroup.createActionForEach$message(list, agentSel);
- ?' D2 {( l- n& l actionGroup.createActionTo$message(this, swarmSel);* |; m6 L' m, f1 D" z
schedule.at$createAction(0, actionGroup);
% X; I. n9 M7 b7 c schedule.at$createAction(1, actionGroup);
1 L+ W9 _' f7 n; t X! q1 l schedule.at$createAction(2, actionGroup);
6 i9 S7 B8 D3 `" h: O" Q3 [
. Y' Q% Y6 a& X } catch (Exception e) {
. U4 U; m: a! u8 B, v+ @1 ? e.printStackTrace(System.err);
& K+ K( W* T! \$ H0 C G6 e7 ? //System.out.println(e);
% y9 T' F/ z- ~. W; [0 Q' ^ System.exit(1);
% O# }! s$ N* A5 W/ B }
9 c" H* _# u+ J/ J( p
; r% D' \2 m6 b& X2 S. J5 l. k7 I0 Y/ R8 i+ e
}
, |, K- e3 G8 |' r* Y: J; d2 ^! b. c4 S4 e3 r, a; v$ g' y
private void swarmSetp() {, |$ |, H* Y6 y) y
list.addLast(new Agent(Id));
/ e% X: a; s9 e) g- U8 g! R Id++;
- b) ^# B. ~: D$ N7 a }
2 h) N( q& e5 W% [2 J
4 Q4 C; |0 ^/ S, U! |" G1 F& D. z public Activity activateIn(Swarm context) {
; ~* [8 I! L5 N( D6 E8 a' @: ^ super.activateIn(context);
2 d+ v; D0 L& S* w schedule.activateIn(this);
c$ o# y% K! s; r# V7 V+ h K! G return getActivity();2 a' w+ H( S( a+ [# O. r
}
$ \# B$ s5 t f
7 t. ~; N! e6 h/ } public static void main(String[] args) {
; x& ^# `. p+ }" ?% C8 z5 P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' R# ~+ [: A: a/ ~+ V; Q+ I% V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" B$ s5 f5 `& l+ C swarms.buildObjects();" R) I# `$ {& R. x$ R
swarms.buildActions();
0 E0 W$ T# K' ]: @; Q z swarms.activateIn(null).run();; f) _9 b& \( z7 b9 D4 w; \
}
0 T* d: F5 r$ f0 L+ ?! q' H; m$ c6 Y" N
} |
|