|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; y. B& h( W3 Y' g1 E# y9 j1 {# s1 W" m8 }$ y. y+ T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 {' D1 f/ V. ^3 k( B ? I* G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ Z% d6 J' j6 g
swarm.SignatureNotFoundException
- w7 \$ t& P+ N0 r# t4 [ at swarm.Selector.<init>(Selector.java:76)9 ^6 L' e) |% Z! I$ K2 N' g& [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 E! {4 X8 r. d7 K5 p at ActionGroupDemo.main(ActionGroupDemo.java:67)
, E* R; j: k8 \, {4 P0 F& ^- E$ n* h( @
( y# S7 t% s; C. V, E! Timport swarm.objectbase.SwarmImpl;9 Y. z, u2 a5 x( n' J8 U
import swarm.objectbase.Swarm;% W& h6 T& J9 u4 }# G: y7 H
import swarm.activity.ScheduleImpl;+ s; V7 I" u7 B( d+ L& G* P) D
import swarm.activity.Activity;- ~* t. C- T' b, W/ O4 }0 {' V5 P$ ]/ s
import swarm.activity.ActionGroupImpl;. `; U. A; m* b L8 l
import swarm.collections.ListImpl;
: Y* x/ B7 Z, p# @, Z- c3 e3 Mimport swarm.defobj.Zone;
" Q6 M* E& f/ v& O4 d/ aimport swarm.Globals;: k. @: r- A5 I+ n
import swarm.Selector;
t# Y9 }# M* T* Iimport swarm.activity.ActionGroup; : b- c/ i& x5 w1 w$ W0 i3 m
class Agent {/ d, W/ o3 {9 B+ v
char id;
: g9 `- N! o; l2 S1 L# c$ x: Y" e
* i f, [, y) |+ U9 }7 C Agent(char id) {5 Q% s# }; k* M& b0 E( t( r
this.id = id;
' ?: |* L- F4 a5 d. f4 M7 j, S; s }
, C1 C8 {/ R' A4 v2 }; h
1 F& f; [3 E, V+ D: ^ m J. T& S public void agentStep() {/ n# V) Z1 F y0 W) E# z4 z- @: x
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 q$ ]% X& M9 ?8 M9 @. x/ ]/ o }
- H1 e: j& d* ?' ]1 |}' c8 M9 n, o7 f. D( [0 M1 g
& P; `. u4 X" Npublic class ActionGroupDemo extends SwarmImpl {
. C/ L' ^( E+ v/ k$ F ScheduleImpl schedule;4 m9 X% a* G* D
ActionGroupImpl actionGroup;+ D7 d2 k2 T5 t) g2 v5 b
ListImpl list;9 I, Z1 ]0 @+ `( M
char Id = 'a';. w& I4 z" X2 \
& L" g6 _7 b& ]
ActionGroupDemo(Zone aZone) {
Y. @( c/ F- x% d! K super(aZone);) e3 T4 m/ p4 j/ }
list = new ListImpl(aZone);
1 W$ v: ~$ H" X: X" ~ swarmSetp();
' Q1 c, b. x: b, a) C4 L7 l. F actionGroup = new ActionGroupImpl(aZone);' J$ f: W( w1 ^8 Y
schedule = new ScheduleImpl(aZone);
5 p) d/ j4 _6 v% z0 L6 ]) S& } try {% q- ~) t2 H, V1 ~( B" g z. A& J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 |+ k% H* v9 W0 f {: k3 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% l- b ^. E }: d& U$ G8 i( Z8 e ( o& h: G( ?" Q3 J$ t% ^" t! E
actionGroup.createActionForEach$message(list, agentSel);
+ N' E; B9 U! d' z' ~ actionGroup.createActionTo$message(this, swarmSel);
" g( n h) Y$ C5 t6 E( ~! Z schedule.at$createAction(0, actionGroup);) [; ~3 p8 z9 u$ F( s
schedule.at$createAction(1, actionGroup);
, H; h& \) g- F' ]/ n schedule.at$createAction(2, actionGroup);
6 [$ u% H* b3 J2 U8 P, c% p3 S+ W. Q8 O. t( m- t( Q; J: m" Y9 u1 N
} catch (Exception e) {
5 c3 q1 T( S) z# @ d' X e.printStackTrace(System.err);
9 |/ C& {8 l& n% f7 n //System.out.println(e);
* }$ E/ X, ?4 S: P System.exit(1);' Q. q& y! b2 ? }$ N6 h
}
) r0 l- k6 c& W" q/ b0 ]3 K5 A' Q/ s
. I! X' B- a7 o8 d }+ _2 F: q3 f+ |4 w* e
0 J6 i1 b6 S" I9 I* o1 u private void swarmSetp() {. Q6 w5 b/ Y% h K/ u) c
list.addLast(new Agent(Id));# C+ n& X0 Y6 u& a# F8 b
Id++;
0 q J: [7 k) c+ W# H }
0 ?7 H6 s, u- w- ~$ [6 Y* o6 y* I+ \
public Activity activateIn(Swarm context) {5 F0 s0 A5 Q# P0 s; c
super.activateIn(context);
6 K+ ~+ W: H1 U6 i9 l8 I schedule.activateIn(this);
( N2 V! A7 h1 r0 _2 }* T return getActivity();
1 R2 \) D+ e( B8 D# M" t+ M }4 O- x5 E; O, F) x, e8 N. y- V
2 w! Q) T2 k) d1 c+ ~1 ]# p
public static void main(String[] args) {7 g3 c8 O* M3 Z5 \6 P# j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 U G' O% X+ H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, i) H2 n' d1 g% |& I d4 K4 v
swarms.buildObjects();, j' c& e+ m) R0 i- K; U2 ]
swarms.buildActions();7 g% S, }7 r9 `/ s1 p
swarms.activateIn(null).run();
, z/ e' r( k7 t; l" U8 F4 B }2 E4 ]( T4 X K0 {2 S( i: v
" l* ?9 C4 p9 q0 j7 ?+ w} |
|