|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! r7 x' G% E0 S" p* X1 w! D H+ c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, a0 g; p( Q- E }) l4 r' i: |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( I7 n$ d$ ~' b$ y6 z5 n
swarm.SignatureNotFoundException6 Z2 c, `. I0 C/ j, p; \+ z) \
at swarm.Selector.<init>(Selector.java:76)% B i4 z/ o6 B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ q3 t6 Z; Q9 L' m# I) H) Q* X9 O3 Z
at ActionGroupDemo.main(ActionGroupDemo.java:67)4 B# f0 p( B. F$ M
& T' | n4 _3 ?" Y: R( s
8 @; e- P. h p7 }/ [import swarm.objectbase.SwarmImpl;; U4 M2 q5 W( k$ h4 u7 ^
import swarm.objectbase.Swarm;# m( r+ d* R0 \7 X/ C9 P, t; ~) |
import swarm.activity.ScheduleImpl;
* G z4 C0 a. E8 T' l. l! T aimport swarm.activity.Activity;; W; G V# ]7 t- x6 p+ Z
import swarm.activity.ActionGroupImpl;
. n& H1 L* D* ?* T5 b$ z. Bimport swarm.collections.ListImpl;. m5 ~% q: r7 }4 ]. S8 W
import swarm.defobj.Zone; 9 y4 R1 s; d$ z6 O
import swarm.Globals;
6 q3 z5 z u0 Y! e3 {3 Nimport swarm.Selector;
4 |, j) o9 t/ `# kimport swarm.activity.ActionGroup; , F+ @8 D; A* b6 E
class Agent {. G. l+ ^ |. {. A$ S8 E$ |7 M; ]4 u
char id;9 k! ?' I* m! p: C# K0 Y
9 P0 |- v8 P0 _" P1 F& n
Agent(char id) {
+ `5 ~4 n; E' g6 \; @ this.id = id;
! Z8 [% c1 d& Q6 h& {+ _ }
8 N }0 J. H* f; M! Q' W4 e6 A* c7 [6 X: t9 V0 _
public void agentStep() {
1 S- Y1 s( ^2 Z4 _ System.out.println(id + ":" + Globals.env.getCurrentTime());
) V! f# ^- y1 t6 ^! |9 v }$ d/ ]: B$ Z% K$ H9 g
}
5 t! p& ~, S' P# Q4 l& r6 ^0 T9 n
public class ActionGroupDemo extends SwarmImpl {
0 G3 B( k# S' W2 d. u& Q | ScheduleImpl schedule;; C0 ~1 N; V2 h2 d/ f* @+ a
ActionGroupImpl actionGroup;
1 { P a6 m: u( l ListImpl list;
2 v" }. G2 w- D2 k9 F char Id = 'a';2 `9 I' x/ S& J# F
4 h( {8 G0 f& m4 D2 q ActionGroupDemo(Zone aZone) {- Y$ k: y7 ^& |# H
super(aZone);& g/ b |$ a) A& u( X% L4 z8 p
list = new ListImpl(aZone);% l( B( {, a/ ]$ x
swarmSetp();
& e3 f4 R4 Z. G0 S s actionGroup = new ActionGroupImpl(aZone);: C4 a% o! T: O( ?4 |
schedule = new ScheduleImpl(aZone);
9 |- E9 i8 }- M- e try {! O$ D# C1 ]& ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);% R& Y* c6 ?, ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 y: I* S" z1 K! E
" K. G' W) B& |# o0 C actionGroup.createActionForEach$message(list, agentSel);
0 t. R' W% b: q3 g6 ~# j. z+ M actionGroup.createActionTo$message(this, swarmSel); f$ d, o9 ^6 W# g; @) j6 V
schedule.at$createAction(0, actionGroup);
% j5 {; B4 }% p. { schedule.at$createAction(1, actionGroup);
6 p* s/ ]9 x" g0 H4 ^5 f schedule.at$createAction(2, actionGroup);
; k! V+ `! U7 m' e# k* P, d
9 I1 F; z/ N. g4 E U } catch (Exception e) {2 `' e( g( K w
e.printStackTrace(System.err);+ Y6 D+ G! Q6 U0 u. o1 j& H
//System.out.println(e);0 O+ @* r+ V3 H4 E8 u. R. s) K
System.exit(1);5 b+ |! X( _4 ?4 F
}1 K4 K4 u8 t' d1 I. {4 T! P9 z) F
1 f! y4 X8 j' A) ?' [6 Y6 l3 ]0 {% E; J5 x$ a
}/ I* h) c z; p6 m3 }1 u X. Y
0 K8 t/ P+ A' B. `% C private void swarmSetp() {: J/ w/ ~% {- k/ [5 S/ \
list.addLast(new Agent(Id));' k7 K# `8 y0 B5 r
Id++;' `( R( M1 g! J7 M
}; _! J2 W" p: i" o
; p5 _" y0 _; v; K: G( C) o# R- H8 n
public Activity activateIn(Swarm context) {0 r9 f) x9 a7 z! R2 Y: B" X! \
super.activateIn(context); Q$ t; w. E, v9 u8 v! T" c1 @
schedule.activateIn(this);9 z- @) i! R4 P2 @+ M* t
return getActivity();4 V9 `3 R4 U/ J* P
}
% O9 E. q/ w) Z5 Z. d0 _# m
) b. c) U( a) y* y public static void main(String[] args) {
D0 d: J. b* R- r Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 n; z& C a* X" j2 l$ l Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ [2 Y; M4 K' A' m; c' O% T" g
swarms.buildObjects();" O8 n0 M8 H9 m3 d! ^
swarms.buildActions(); y1 ?% C- L3 x& \- J# s& d" {
swarms.activateIn(null).run();
. u5 v# b0 y5 p0 T/ T+ o }
0 ~* d+ r S6 B& P0 Q' M" g% H- T: E9 M/ s" i. j) v1 ^4 y
} |
|