|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * `2 F# C3 _4 k9 D
$ i! K4 I' O& G" S2 V; m: j1 E$ Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" d9 x( R6 z' A# u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. E# U4 q4 s+ P4 ?" p" I* h8 |
swarm.SignatureNotFoundException
2 p% M: E. x: N( x8 \ at swarm.Selector.<init>(Selector.java:76)& Z6 c% D1 s. q! x+ C/ E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) e9 d0 x: M) _- d: A
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 M! o2 D0 h @* F# Q4 h5 z) g
& ^- a/ m* G9 v4 j
# G2 y) k; k e1 x
import swarm.objectbase.SwarmImpl;
1 S+ m; h6 m2 z$ r8 b: w) c. ?import swarm.objectbase.Swarm;
/ T) ~% G* G% _import swarm.activity.ScheduleImpl;
% G8 `2 P! m5 k7 Gimport swarm.activity.Activity;# d" k" j0 M/ T! H
import swarm.activity.ActionGroupImpl;+ J- d$ h$ c1 X* F6 x* O& X" u
import swarm.collections.ListImpl;
) k2 g- j# N7 ~/ J ~import swarm.defobj.Zone;
+ w5 L6 D" [' k$ T% Limport swarm.Globals;+ d+ n" x" J6 C6 c2 s
import swarm.Selector;1 g+ {7 P1 C" O
import swarm.activity.ActionGroup;
( ^, P9 j9 e, [class Agent {* _- p2 b' z& u `- A5 D
char id;
. [3 L( _( m1 S1 G9 Z; {1 ?, Z6 G: W& `5 E; w* L
Agent(char id) {6 T& x$ d# [1 q
this.id = id;
4 D5 r. l/ W8 l. e6 e% J }* R: {; t1 d! p% ~' ]
/ t( _" g! K. c- { x
public void agentStep() {% M9 C _+ p5 H e0 O
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 T$ \! ]* a4 A1 K6 C$ E8 X: B2 P5 |9 v }
8 `/ b1 F: P$ p; [) C v) ~/ @}
, H# k/ L" B( Q. `! f" A% a" h0 W0 C9 N' o# R8 B5 R$ h
public class ActionGroupDemo extends SwarmImpl {3 o$ e9 T" W0 V: p/ l& w4 t/ S" U
ScheduleImpl schedule;+ u4 U: ~( B8 H+ r9 y* r i
ActionGroupImpl actionGroup;* _+ t9 B# |6 K
ListImpl list;
. ]) H2 `7 w- r* I ] M char Id = 'a';
( w3 v) s; A1 }( M4 C4 g. u X- H5 y9 s8 H8 K) e" e7 I: K% p0 @
ActionGroupDemo(Zone aZone) {
+ l3 q K Q% S+ {- f super(aZone);5 r7 W# f, Z4 i- D8 C" [
list = new ListImpl(aZone);2 b6 D& k7 ]6 O$ e) e9 w# i
swarmSetp();
: r* @' j7 W! Z0 M0 [" p4 ] ] ` actionGroup = new ActionGroupImpl(aZone);9 k' L2 g. v7 u- }% U
schedule = new ScheduleImpl(aZone);
* {0 U) S8 z$ \0 q) t9 e' A try {4 J* d+ v8 f3 S Q: t: V- B7 Q6 ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) j3 r: ]: g7 D5 @; K1 g' k1 o/ r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 m+ A* ]) Q% r" I7 x( `4 I
. J: _( f5 I2 o
actionGroup.createActionForEach$message(list, agentSel);
# D' ]* b9 H& q W# k/ g actionGroup.createActionTo$message(this, swarmSel);
# }% [+ W+ Y7 |$ K7 j schedule.at$createAction(0, actionGroup);
6 l1 @9 }2 h8 X schedule.at$createAction(1, actionGroup);
/ k/ `8 f+ v8 j! r0 a+ ]! O* S schedule.at$createAction(2, actionGroup);
A, w; ~4 y- r6 R5 U* T% N/ F. N
} catch (Exception e) {- v# ]7 I" S1 ^9 T
e.printStackTrace(System.err); p H% s8 F7 x: h; b: v2 }8 [8 H
//System.out.println(e);
7 j( w" \( }$ i System.exit(1);, v" P: R# P @4 q2 w$ s# _
}
2 F( R% I. ~- ], E; ~) O" r$ S4 W) |4 A2 y+ v4 t0 X
. D8 T3 t W9 M& _" }& ^: i' \) k3 F
}
" J% I0 M6 k' o: b# g0 X
3 ?' s2 o& G( c' \9 r: r! c, Q) G; q private void swarmSetp() {
6 ]# @7 C6 |; i4 U7 k list.addLast(new Agent(Id));6 P6 ]8 }' H- y( x
Id++;/ p# g8 ?$ p% u# P; N
}
5 @, M- e( W8 K. ~- s- g" g$ v9 Y# h. |, O2 p/ l- e
public Activity activateIn(Swarm context) {5 P7 H$ ? H% x! l4 D+ a
super.activateIn(context);
' W% Y2 P- N9 ~' l6 B8 ? A/ N8 o% e schedule.activateIn(this);7 D$ {. O) }3 f& J0 [- I
return getActivity(); B; }* j9 _: H- D( l. k: q
}9 ?0 E! r6 `5 P6 J9 P
- l4 i/ A( y3 l8 y* _
public static void main(String[] args) {- N5 c2 Y9 L2 B" g* c( z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 v" Q% n1 h: Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: H8 j3 I2 _& J* v$ s/ z1 z. P
swarms.buildObjects();
. {2 r* T( a& y+ h, S0 N swarms.buildActions();% ?, o. `% R9 z2 A7 N; w- n u( L
swarms.activateIn(null).run();
( J+ o& u! ~' v8 C }
" Z4 D6 W( r1 y( K7 Y9 l9 ]2 h8 R/ e: H& { z6 u7 ~+ L
} |
|