|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% v; l( x" T' u$ p$ U+ `% s4 i
6 d- F' W0 U6 V* Q/ U( B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; a$ N, b$ Z$ N& J. K% s- C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 W, |6 ~) Z- J& O# T" L% yswarm.SignatureNotFoundException! S$ [( @- Z) ?# H* `* L8 C
at swarm.Selector.<init>(Selector.java:76)
C" d" S( s- ]2 ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 _& D$ G/ @9 C) m+ I( L at ActionGroupDemo.main(ActionGroupDemo.java:67)
) q) r& [7 D# [: }* D5 C+ B2 d1 O
6 u. @* Z k- A+ M i6 Z; {$ @6 v3 d
import swarm.objectbase.SwarmImpl;9 {1 Z: q2 g6 R4 j
import swarm.objectbase.Swarm;' W! S2 |6 E9 ?$ F6 a; i& Q, J
import swarm.activity.ScheduleImpl;
: F k% ^- t4 L. I S* N6 I2 T* [import swarm.activity.Activity;- }3 C# A d# i" R" y3 R- a9 }
import swarm.activity.ActionGroupImpl;
. E, B+ r. O i0 l. Iimport swarm.collections.ListImpl;
' F$ {$ R/ i& oimport swarm.defobj.Zone;
4 X! W0 R# U% D& m" \import swarm.Globals;
# x! K) V# p( K+ e4 nimport swarm.Selector;# i9 c/ H; ]7 p( W
import swarm.activity.ActionGroup; $ ^" F6 b1 o7 Y# T
class Agent {! x/ u1 q7 U/ M- A( |" [
char id;8 o& ], M& q4 Q% f |! t, O
. z( V2 A: J+ i: n1 p0 ?
Agent(char id) {
! i3 [& w$ @) Z3 Z7 Y: R6 N+ e this.id = id;
" p/ t5 Z/ Z5 B" \, V8 N! f% O }, G7 Z3 d& ^& R' F7 _
6 T( K* C T3 t$ `2 _/ q public void agentStep() {+ Z @( j% A; g. }1 U
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 f: Z4 @* m0 r8 d$ W }
* A8 ]7 a1 F. y}% D# M A$ I0 E! W4 }
& j& w% \$ y& r ]9 g% W
public class ActionGroupDemo extends SwarmImpl {5 \* a" }5 ^) N& d- H$ ]" N6 ]
ScheduleImpl schedule;
* ]& ~! ]1 z; I/ F- G ActionGroupImpl actionGroup;
" x7 b, D0 I0 `( i1 |% p3 R I ListImpl list;, J* c( d4 B1 U3 Q+ _
char Id = 'a';
H) m4 X4 _0 r' T
! l$ m$ r5 g P4 }7 c ActionGroupDemo(Zone aZone) {
S3 c0 h% p- a( B# I9 i8 o- f+ p9 m super(aZone);
$ Q- Q. G$ U5 H% R9 O, U% u# T list = new ListImpl(aZone);
; ?4 e; e) c7 S9 Z$ i$ v swarmSetp();
/ X p# V' }8 e. C8 ]% L actionGroup = new ActionGroupImpl(aZone);6 g- ~) `5 H% V# p5 b4 b4 a3 z/ {
schedule = new ScheduleImpl(aZone);# W3 |3 B+ u5 V; }; S7 c
try {) I- V4 ]/ _' N2 I# V
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 q9 R9 m1 J( a6 H% G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; M E6 n5 U" F- i
' \0 ~3 ^+ f3 M
actionGroup.createActionForEach$message(list, agentSel);
) _; Q F/ I. }6 m( e actionGroup.createActionTo$message(this, swarmSel);' p. m6 Z) f- s* o3 [
schedule.at$createAction(0, actionGroup);
- f J3 F0 e7 ~2 E1 c0 ^+ _1 s7 C: E' _ schedule.at$createAction(1, actionGroup);; V2 G% k1 k# l7 _' V- Z! ]
schedule.at$createAction(2, actionGroup);
8 P, Q1 J: O& @0 q1 g+ P$ `0 x, x: ?* A9 h* Q) ^+ x
} catch (Exception e) {% a8 d2 m Y& y# Z9 g5 M
e.printStackTrace(System.err);. ~, k6 v; ~4 f; l" x/ j" y& B% r5 V
//System.out.println(e); ^6 ^+ B) L- K
System.exit(1);# b! n% z: v$ i% @6 b
}' \8 j e- C0 Y4 i, D; m
9 i% l/ j) r% T# X F; X: V. h6 v" p$ j* F
}
4 I% @3 A/ S' U' k5 u
) y6 H6 T3 t1 o+ w1 W, [( Y& t3 b private void swarmSetp() {; J! V% q5 A% m% P
list.addLast(new Agent(Id));2 g7 B7 q$ Y6 |6 U
Id++;! O$ D: Q0 {. Q& C. j( a$ T$ P
}( M! t8 m6 Y: S: r; _. c# J
: U0 M1 s6 F! F3 e
public Activity activateIn(Swarm context) {( S B6 R- c. n5 g$ p7 w' ^7 `* M8 j
super.activateIn(context);( s$ O7 K& X0 i& F
schedule.activateIn(this);, q; N: G- {, u. V+ N
return getActivity();
3 p; {# ~9 G g* @6 i. j }
, h/ \" p9 Q! R M( c( a4 U4 z- n" R c% I* V) r7 o. J
public static void main(String[] args) {
[( K3 e6 P& x* w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# C- z& _0 H F( H E, j2 g' n5 u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 q. b7 g- _% g( T7 v; [& l
swarms.buildObjects();
6 W, q# D1 O7 C3 V swarms.buildActions();
0 z$ s2 k7 G; Y. \- K$ p/ H swarms.activateIn(null).run();
4 q6 q. h# k3 H% P6 {3 A/ v& B }) P& s* O4 A T1 I8 c& O4 w
$ c: j/ C* F) p& w! }} |
|