|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( G, t: c4 i- u/ U) G6 s" N, n+ P# N: P/ `3 v0 E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# |8 V9 { y& H9 O% |5 i, } x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( H, P4 g% u. e! N, v# E1 U0 ^swarm.SignatureNotFoundException2 K2 Y& C! i7 {1 _4 g1 j9 D7 D
at swarm.Selector.<init>(Selector.java:76)6 N8 J$ f4 c( T$ ~0 v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); J0 a* U5 K- }+ h6 a* M0 }3 |2 l
at ActionGroupDemo.main(ActionGroupDemo.java:67); p& g) L. ~1 K. L) ~8 z
) q3 O& Y- Y! @( y5 d# C% [' S6 l4 o7 z/ l# P3 E
import swarm.objectbase.SwarmImpl;- l" ~ H; \& T- u" l
import swarm.objectbase.Swarm;
2 T+ F" N8 g3 c, P9 O, `, uimport swarm.activity.ScheduleImpl;5 C0 Z. f r9 c5 n
import swarm.activity.Activity;6 S) w! a/ n' L
import swarm.activity.ActionGroupImpl;1 _, D' E2 T* w9 R6 t
import swarm.collections.ListImpl;
+ L# i2 q$ a& X6 y: Qimport swarm.defobj.Zone; $ f" g2 k" ~* r4 Y' [$ h' X
import swarm.Globals;
! I7 h* h+ D, l. W; u) I9 iimport swarm.Selector;+ B1 s/ Y3 K" Z6 J$ _% T
import swarm.activity.ActionGroup;
5 j! g2 [: b* }" E" E' C3 c9 L! D* tclass Agent {+ a4 H% [8 @/ |, z0 |4 L$ b" B
char id;
' y# S' P1 u. r- ~" j
" N+ Z! F% Q$ F& O Agent(char id) {
' r; E5 r }' s0 b1 B( ]( E) P8 D this.id = id;+ f. N+ A3 A% I! d: O
}1 X4 C: J$ V9 a$ B0 L3 b- f
' P% c5 P7 a; \; q* V' |
public void agentStep() {. m3 ^' ]5 {" H0 w5 o( c
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 o: E/ u( H9 N5 M7 s }1 s, N" M$ f- E7 {( L' o- E* T
}9 G7 W$ F3 R9 o' Y+ Z4 k2 y6 y2 @
% D8 E1 S# W( }' r# g! F9 ~* Z
public class ActionGroupDemo extends SwarmImpl {$ E* ~4 P+ g# C
ScheduleImpl schedule;
8 _8 U% g9 G9 ^- o* W8 r+ m8 Z3 q- P ActionGroupImpl actionGroup;8 q3 i) v' y4 v; ]
ListImpl list;- G& Z4 q( y3 D8 D/ t' n' _
char Id = 'a';
4 k* M7 G% E: i0 [! [4 o# R. N8 I& ` n
ActionGroupDemo(Zone aZone) {
; z2 k1 X6 o; m+ j1 f2 b super(aZone);& u7 G, S1 s8 q3 ^, x( _# \' I
list = new ListImpl(aZone);; Q* I' s! o8 ^
swarmSetp();3 N; M9 d4 S7 M& u
actionGroup = new ActionGroupImpl(aZone);
: G0 T3 v3 a1 ?. G, R5 m- Z5 f schedule = new ScheduleImpl(aZone);
% Y3 Y- m$ r1 g: _! i9 I try {
/ {/ h9 o7 D! x: B: s4 `" ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);
( k" E( i/ X# s5 ~& `- P8 e Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! F8 N) D( C. F/ q/ ?
. [; M* G7 `( r2 Q/ d# r) w: g, L actionGroup.createActionForEach$message(list, agentSel);% h% p, o e' M% M( a, ?+ y
actionGroup.createActionTo$message(this, swarmSel);+ g" Q7 ^0 W2 u% O" W8 J
schedule.at$createAction(0, actionGroup);
' w9 E7 d C) Y! v schedule.at$createAction(1, actionGroup);
. I. }& e- ~* ?, r9 P% l schedule.at$createAction(2, actionGroup);
1 D5 m* L, m( ?; J' |& h! x1 L6 H! }% Y. w% t: [
} catch (Exception e) {
- Q0 s% \ D2 ?. u7 h$ d v e.printStackTrace(System.err);
3 s) h% v% X5 J' Z1 k: q //System.out.println(e);
! w m# {* {! L% ]! l! S System.exit(1);
( G5 P3 N: @& f$ t }
4 P/ b( ` L; D4 _" X, z0 \% s8 X- \) b" r) H
. D; ]4 h) m4 A4 |$ d& a
}& |0 Q+ y6 v; [$ Y, v
2 w' e4 u! d7 d" x! e
private void swarmSetp() {
9 \0 r. N6 j' V% n8 K list.addLast(new Agent(Id));
& E) K; F' j7 l& G6 C Id++;
B: h, V6 D. r/ K5 u0 y& { }
8 X* ~1 N7 W3 ~
$ e% o9 O+ G# i4 z5 U3 f+ M public Activity activateIn(Swarm context) {
0 y( D5 @* t' R$ V2 n super.activateIn(context);
* E+ s! n( Z0 B) ^- ~$ h$ f# f6 ^ schedule.activateIn(this);
" ~5 Q& J! W; h! ?' O return getActivity();( y+ m$ b4 e3 W) s% v
}
1 {: o% f8 s6 ~# G* T7 i
% {0 [1 s8 s* F2 a6 K: K public static void main(String[] args) {# J& |* D' y/ y/ S8 l( n4 I% H, j3 K5 ]2 g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& u8 B% |: K1 W, Y0 ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, U, ~7 Y. J+ F5 h5 S# X; I swarms.buildObjects();! O6 r/ u+ P6 A9 ^% v( Q( `
swarms.buildActions();
- d9 L$ E& u( Q$ x) Q swarms.activateIn(null).run();
! W9 o) x$ X% V6 R3 t. Z }
. @2 h4 g; z0 h4 S
6 g, p8 t% c. w4 q5 l S} |
|