|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 _( a0 k5 Z3 F! f5 b7 N7 g- \. C0 o8 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ i% @1 P" Y# Q1 {# W; c' S# a% q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; p; F5 m; }- v! X Cswarm.SignatureNotFoundException. y4 q; A/ v) ]7 ~$ g+ r6 r+ H$ k- _7 L
at swarm.Selector.<init>(Selector.java:76)( c0 \4 Z( O" `8 a# U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. D6 c) g/ [( ]# P3 L: e: m at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ J& |% v) v2 {8 L2 \ g6 i5 o- Y ^& _9 a/ Z
) ] e U0 j, y D# L2 t& }2 [
import swarm.objectbase.SwarmImpl;
0 Q0 B) U7 f4 x- eimport swarm.objectbase.Swarm;
7 z0 m5 k$ D1 X" fimport swarm.activity.ScheduleImpl;* i1 o, l" Z) a( h, o
import swarm.activity.Activity;
8 Z J1 p; y# V( L! {$ bimport swarm.activity.ActionGroupImpl;/ S; V& z! M s1 h
import swarm.collections.ListImpl;
2 U4 K8 l) \1 g3 y; C/ V$ ^import swarm.defobj.Zone; $ }, b' w3 S# c, E J1 P
import swarm.Globals;
Y7 c( ^& g2 y9 l- N {: Simport swarm.Selector;
9 }/ \% b! Y8 D" ~import swarm.activity.ActionGroup; " W6 T# ?+ K+ F; I
class Agent {
" B0 e; c" \2 } char id;, g r' g$ r$ u: C2 B) y/ i/ H
4 N# ]) d- V/ G" |7 x Agent(char id) {
3 w. u1 e" @/ m this.id = id;
N) U W3 h r4 S1 d+ ^ }! h( r \: Y8 ~) G# G5 g7 ?2 c
6 f3 u: C5 c& W1 ~- Z
public void agentStep() {
7 ~2 f% A V! t- Z6 v" B& ? System.out.println(id + ":" + Globals.env.getCurrentTime());
/ u9 }! G1 Z4 ]2 f# _ }8 @* p! q8 M9 S( C: e
}
. t) [4 d- D/ G+ y; t! a1 J- S
; s9 B$ g8 ] t$ A( bpublic class ActionGroupDemo extends SwarmImpl {
5 U7 O' X- }1 R @/ A( n ScheduleImpl schedule;$ ?+ c" e, G; k$ s
ActionGroupImpl actionGroup;
4 @$ E4 |8 `9 Z0 x ListImpl list;
- i! b8 ~, c( M9 P+ e char Id = 'a';; z- ^, x$ k. p2 w: J' s1 B z
- _0 `3 Z6 X; F, J E
ActionGroupDemo(Zone aZone) {
, H3 D; i$ Q8 E8 f+ u% m super(aZone);7 v" t* i6 H2 T7 |2 V: e
list = new ListImpl(aZone);2 ?; h4 I/ A, h2 @) w" e1 O
swarmSetp();7 m" Z5 z x0 `+ C! e
actionGroup = new ActionGroupImpl(aZone);7 p1 Y. j* R. q3 G. Y) C
schedule = new ScheduleImpl(aZone);
6 ^8 N! ^# z7 a B try {, E4 w5 z* v2 g; s2 @. e8 G
Selector agentSel = new Selector(Agent.class, "agentStep", false);% o1 x9 n: B6 R6 @: j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 ]: r5 T3 i1 Y
$ `) n- |+ v8 l8 K) z actionGroup.createActionForEach$message(list, agentSel);
# l- x" j$ q/ G; Q$ h2 L actionGroup.createActionTo$message(this, swarmSel);
* K$ K& A: f% n4 I/ `+ K) T6 v0 o schedule.at$createAction(0, actionGroup);
9 |3 M- W6 X$ J. }4 q+ n schedule.at$createAction(1, actionGroup);. }0 W. r, D7 m8 l
schedule.at$createAction(2, actionGroup);
# l: b) a* |1 A3 c& C' W% T8 P, ~; v9 x- \: f
} catch (Exception e) {
5 Z+ i; w2 X) j! [, v l+ w e.printStackTrace(System.err);
& w: V* r4 {" s& q$ y //System.out.println(e);* q+ E4 s' ~ t# T e0 F" {) L, t
System.exit(1);
1 I. D* H n$ Z, G* |9 q+ F5 d4 S }/ @" U+ _: Z z9 O e& L, G
2 j; D" r P* C( w& P
# o* e$ r$ W/ M' r& ^0 l* y
}
# z8 ~9 ]" t, G# Y. {0 \( N
# P2 d6 l6 X0 m: p2 ] private void swarmSetp() {
! @% C' T4 `' S/ E7 M5 V0 `( l list.addLast(new Agent(Id));' T% f( `: V2 D, Q
Id++;
& F1 ~3 n0 E. g. G* n) U }
' h$ n( G6 {# k6 n# V% t
+ G& F: P+ v, W9 g2 U public Activity activateIn(Swarm context) {
2 t5 U1 X0 ]; K# |+ N- [& G$ p% z super.activateIn(context);
5 O j/ D" r* {( n schedule.activateIn(this);
( u0 J: b& i s; o) ^ return getActivity();. h' ?+ @4 R5 h2 W
}
9 E* l1 g/ p C) F0 c5 G7 R& m: I8 M( X2 I1 N$ \
public static void main(String[] args) {' v. M% L, M7 J6 Y8 g8 ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" t- Z7 c2 m7 v1 E" n* k: N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) F# r( A, E6 Z
swarms.buildObjects();$ H- s1 g7 ]5 i* V. p
swarms.buildActions();
9 \5 G4 J8 E1 b4 `; ] swarms.activateIn(null).run();
$ T7 m* [& V5 M: t4 W* { }6 @ }$ U# E4 i' T* c3 l0 D* F1 }3 |; k
) _6 D: {" y5 B6 i+ P
} |
|