|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 B# U; X5 k( @1 l8 W2 q1 L
0 Y& B1 s* f _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( r3 q, d1 I/ X# _8 ^7 {/ x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) Y* l. F6 ]/ D% }$ B+ A! Iswarm.SignatureNotFoundException1 a8 k% n" K, Y9 w; |+ X
at swarm.Selector.<init>(Selector.java:76). a# L5 B: U. E" X4 Q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ L( L8 R9 W( g( p at ActionGroupDemo.main(ActionGroupDemo.java:67)$ o% J* _% Y$ T1 [2 R
2 n. q. \$ Q: P( s8 w6 ^
! U2 i" w+ R) timport swarm.objectbase.SwarmImpl;
* A# x; W; B# X' c) y5 Rimport swarm.objectbase.Swarm;
- Z; n; p5 f& Simport swarm.activity.ScheduleImpl;
, ^4 G& t, p2 ]: ^/ bimport swarm.activity.Activity;: Y: F! D, Y6 F( i0 A5 ~2 _, \
import swarm.activity.ActionGroupImpl;9 D" C) e* S- L! d
import swarm.collections.ListImpl;2 J3 \. F8 l. g. K
import swarm.defobj.Zone; 3 l& Q- n/ y7 {# Z$ p% {
import swarm.Globals;3 ^: r* K1 G# B, Q1 J
import swarm.Selector;9 {, _( n8 R2 n* u! W9 ^
import swarm.activity.ActionGroup;
: ]6 b2 Z% n+ K' V; P7 B1 |" oclass Agent {
, d, R/ Z3 S1 h0 b E/ [! J char id;% {& ^' z% n6 X& X8 h( r* g
1 Z$ L& M- g r; N" v2 m4 E& K Agent(char id) {1 n* ?+ o* z3 S8 n' A) ^
this.id = id;' N8 D3 v) ~" }3 F# t& l, @) w
}
2 f' O3 [" \5 _2 _
, G9 ]+ G, ?3 `0 n) ^# v public void agentStep() {
, B. a& p/ |! G6 P2 { System.out.println(id + ":" + Globals.env.getCurrentTime());
4 `( x: v0 Q* h) U5 P' {2 T }
& H% T! i- j8 @0 g5 @" R0 p}( A7 b( j+ B& G; _
H4 m+ O0 W$ G, }2 _public class ActionGroupDemo extends SwarmImpl {
6 r. X0 {3 H+ ?7 A0 B1 A ScheduleImpl schedule;
+ k# c4 p6 _2 c# a3 H ActionGroupImpl actionGroup;% ]; V; m8 M. I' R; d2 W- s
ListImpl list;, R6 s& Z# H( D% C5 r/ R; P
char Id = 'a';
4 R" J/ F: F2 u) x; r S* {( u" M: p9 ?, y
ActionGroupDemo(Zone aZone) {
9 @3 _ y+ [# @ super(aZone);
7 | P) B8 O( \ list = new ListImpl(aZone);+ }! V, O: A/ R) S7 C2 ]: E
swarmSetp();; J. O+ d: W) o% x/ F
actionGroup = new ActionGroupImpl(aZone);6 Y; [9 E& y" _; @" {
schedule = new ScheduleImpl(aZone);
, I$ [* c Q1 |, P. @ try {
5 F+ }/ k1 D) j. w6 p _5 N# r8 ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);+ w Q, H5 W7 W v% F# ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' S7 V" e1 f8 x- Z- `! \' g
- Q( p% P; N* E( A, X
actionGroup.createActionForEach$message(list, agentSel);: a1 Q' e/ B8 X" S8 g) |
actionGroup.createActionTo$message(this, swarmSel);
) ?# u% L2 C6 l' s6 y. p schedule.at$createAction(0, actionGroup);- |) \6 _" ~6 F a" d2 ^
schedule.at$createAction(1, actionGroup);: c7 W6 W5 m, D( b" S. }
schedule.at$createAction(2, actionGroup);
& a4 S( ?/ D- U' C
: B I; i; I! Y4 w } catch (Exception e) {
9 a+ t: c7 I: c: J' V) T8 r- e e.printStackTrace(System.err);" ~' m' H* p0 M, a
//System.out.println(e);9 h, n& i( N6 J, m% r, V( a+ ~8 }
System.exit(1); Q7 b1 H/ {' D! p( a3 A% f
}
$ P2 X$ i }+ a! W1 C
7 H' W: A, I! f/ v+ T3 l
2 v; S u3 o0 d6 }# |4 b }! D W& I+ d0 R7 O1 L
* {7 o6 O/ ~; P% k. D1 z
private void swarmSetp() {, Q2 B. E/ o6 ~3 U0 [. O
list.addLast(new Agent(Id));2 F0 L0 W$ L3 L f& h; x
Id++;2 Z' o" |5 Y1 g2 E- [5 `( f
}
: `. f+ Y6 \' ]& h# e2 ]! M4 x# R- B4 { P( W
public Activity activateIn(Swarm context) {
0 J* i" O2 d0 R( x/ x& i/ m7 E G6 o/ t super.activateIn(context);8 G& b) t. W) R( t- ~9 {
schedule.activateIn(this);
+ o# p# l$ \3 N# W return getActivity();7 O1 v1 }3 n5 Q* I- ~# z3 K4 i9 h
}& {, V; _6 s5 Q0 C- i$ d
8 p$ W# l% D" B3 ]7 T public static void main(String[] args) {
# W& C/ L+ Y0 _% r% ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 Y8 c/ |' U' r- n7 M/ t/ t) K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& D: \. `' t: A" r swarms.buildObjects();
7 ]5 R- r/ x$ m0 B+ _ swarms.buildActions();
) G5 n1 V8 Q+ h% P4 n( F$ w, } swarms.activateIn(null).run();, C A$ N' z8 S( r- H- v
}
# G8 W4 V# m% E8 u( X' A
! }" v/ H) N; Q2 p6 W2 `* S9 p} |
|