|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) p# h' q7 e1 W# z H8 g, u. k4 A- t& R: b# y* o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' a, A$ v+ G7 h/ E5 C; a: l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' T. W. Q8 T5 h$ ~- F m9 ]
swarm.SignatureNotFoundException
1 x8 G+ R1 n$ x0 \2 k7 H( @2 U at swarm.Selector.<init>(Selector.java:76)
; F/ O' O) O7 t+ m" F% m) F- C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. T. l; c _, I1 S( z0 J6 f2 r! z. s at ActionGroupDemo.main(ActionGroupDemo.java:67)1 e3 h' n& f1 Q2 ~$ A' F, F3 U' C e
2 w) m/ R' A$ n6 L* i
( R! K) Q4 Q! h& B
import swarm.objectbase.SwarmImpl;
% A- W& G: Y4 N# f4 ]6 v1 P* Q: Zimport swarm.objectbase.Swarm;
( H6 H1 |! g. n( Simport swarm.activity.ScheduleImpl;. n3 U, c2 L7 x0 n2 M
import swarm.activity.Activity;( o" m( c. y" N/ [/ k1 h
import swarm.activity.ActionGroupImpl;. C2 p! T& k2 d
import swarm.collections.ListImpl;
# f/ F I: j5 s1 ]% R7 ]& @import swarm.defobj.Zone; * O! Z# t3 f* v d
import swarm.Globals;
1 ?( G6 U2 k& x/ H/ C7 gimport swarm.Selector;$ t. L* u1 W# t$ }- y, p% o
import swarm.activity.ActionGroup;
% k A3 r3 g+ o. b1 V- d/ h# iclass Agent {
6 ~( w" l; P! B, e# x char id;& J' C2 V, V/ Y) X$ X- @" G6 Z0 B
q3 }5 b: x4 N2 F
Agent(char id) {: `- A3 U2 ^$ g
this.id = id;
2 L$ G* m8 P& S3 X- F3 v2 I } V% u0 t6 y; I8 f. S A9 e
: f! U9 i; P% F; _$ I, ]' H9 w& } public void agentStep() {' e% ]* u$ t( ]
System.out.println(id + ":" + Globals.env.getCurrentTime());, u0 k/ [3 P, W" j* z! m3 @
}
# F8 W6 r# }9 K9 P}* X5 W' p8 o% a! ~5 ^4 l, G3 p
Q- C* R+ y0 N4 v% V! N
public class ActionGroupDemo extends SwarmImpl {
7 X' d( U# V# `2 p' G& n: Q! d ScheduleImpl schedule;! W3 i Z- ]- v7 M+ W% _0 ]
ActionGroupImpl actionGroup;
# B- B, y0 _- ~ ListImpl list; _: ^" S0 J, S2 D) N
char Id = 'a';
- j& x: @2 o0 m4 @
6 K o# H% i8 ^. n2 ]( c% u ActionGroupDemo(Zone aZone) {
6 u' u4 `( P" p @) w' ?% d super(aZone);
0 v) k& d9 F7 g9 p3 }' i/ \ list = new ListImpl(aZone);
, A9 m3 _" S8 [7 f: g/ m& b; Z swarmSetp();
1 X5 b: |! o/ J6 ?$ O" h1 L; ] actionGroup = new ActionGroupImpl(aZone);2 n5 c6 S, r9 @
schedule = new ScheduleImpl(aZone);" u8 k6 e C, d$ n$ l3 b) G
try {& `% v# a/ r* D3 c+ [) X
Selector agentSel = new Selector(Agent.class, "agentStep", false);, Z8 a8 _0 o+ x6 j, t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 g) l2 i5 C7 G$ Y% c, y ' d% b$ @0 O! z. m, `: \4 o
actionGroup.createActionForEach$message(list, agentSel);8 e, l% U4 Z/ A& f( Q% {, z
actionGroup.createActionTo$message(this, swarmSel);
]. _/ N. y8 u: P) a3 n( U1 ] schedule.at$createAction(0, actionGroup);
% M) P" ~$ {' F schedule.at$createAction(1, actionGroup);/ ?7 r+ J4 |8 n l7 h
schedule.at$createAction(2, actionGroup);
1 a" b; d$ H8 E- T i2 _
4 S$ u3 k" P* T7 M4 Q* q } catch (Exception e) {
/ _6 E9 |2 x9 c# O; x/ u; _ ]. X e.printStackTrace(System.err);/ q* D8 Q k3 z) V
//System.out.println(e);: U$ R5 o8 u% D$ H( E1 ]
System.exit(1);
& }) S4 ~, ^/ v/ m4 L }& Z p6 q8 X- S" _& M% ` `
, X, s( ^0 E% _! p
- h# s" C; l7 r3 |# N5 c% p H
}3 r1 d6 a5 E) @, o
1 C' U. v$ j& ?! t9 S! x private void swarmSetp() {
, S2 B. w, B& C# z7 K list.addLast(new Agent(Id)); B$ h/ f1 p! |
Id++;* Y+ l% h6 ]; `! `6 ?* ]
}
0 e* I* D, E0 j! g) |. _) \9 @$ A& S/ y p; r
public Activity activateIn(Swarm context) {
0 \2 K- S) z" g2 B& \) t* Q& B super.activateIn(context);6 b; g; I$ ~3 D! }& `/ s; a1 O* U
schedule.activateIn(this);% `* y: d+ d* M9 C0 A$ h
return getActivity();
* Y) b9 D# b2 H6 `' z }$ e( _& z, M0 U6 B6 R" D: `
: W0 S& W) o; z3 i/ V public static void main(String[] args) {: R7 L+ Y7 t- }+ j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 k( E* {# k' H: R- P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! f; ^3 l1 X$ ~4 h swarms.buildObjects();. ?, { a& o; ~6 y
swarms.buildActions();
4 |$ {- Z4 N# U& k+ X' \' l swarms.activateIn(null).run();
! \3 K( x* ^5 i3 v# x }6 o1 m7 q; r$ `) ~
6 q. B. F) V! n) C4 i l' G" O
} |
|