|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 T. ]& [9 H- q
3 P0 p1 B8 `' _+ `" e5 `- H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! h. w7 e1 D, d7 i' a! Q* E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, r+ a2 Y" Q" o7 W8 z& Mswarm.SignatureNotFoundException2 R9 {1 Z* S9 e6 |6 ?" D
at swarm.Selector.<init>(Selector.java:76)8 k; ]* n( i+ r, {2 Z8 q' j3 e
at ActionGroupDemo.<init>(ActionGroupDemo.java:37). c! _' T5 E* ]. p# t! ?9 Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ x& P. m4 a$ [: O" k! H, B- y) L8 |: V+ _2 B% J
" x3 A0 F8 I4 g0 E: O1 E4 Y) cimport swarm.objectbase.SwarmImpl;$ T6 ]/ R6 q8 w; b# \1 Q
import swarm.objectbase.Swarm;( x& g. p! [0 e1 b/ Z l0 x
import swarm.activity.ScheduleImpl;& O8 p: W) }9 U3 T
import swarm.activity.Activity;1 d3 A( @- z! K$ ^" w( B/ | I T
import swarm.activity.ActionGroupImpl;# G& u+ _# z5 W3 g% T$ v
import swarm.collections.ListImpl;, v1 r+ d9 U% X+ Q
import swarm.defobj.Zone; % A* r7 `# ?& j# K
import swarm.Globals;9 [8 Z: |7 b9 m: f" b
import swarm.Selector;0 `! L0 [6 u( j8 w% e2 |' [
import swarm.activity.ActionGroup; 5 i5 [( c% p& m, \' ?
class Agent {9 f$ _7 B- {* w( s5 o! D
char id;
' S$ y' N8 P Q2 w: G# r! X8 L0 Z( U6 H
Agent(char id) {
5 k: n+ y8 P; U8 y8 p( J this.id = id;! @5 z4 B6 z. \. Q* e
}6 {, C9 U' Y4 |6 K1 W+ p
! R% O; Z2 W; u9 N! r8 @- D
public void agentStep() {
y+ |- [* I4 B, _1 T System.out.println(id + ":" + Globals.env.getCurrentTime());7 w4 e) }9 e4 w3 ?
}
9 ?( v8 s0 D# l) L0 L0 v2 j}8 Z2 k) `; v, }0 Q7 N$ \3 C
( Z1 C3 c- `% ~" K* a/ Gpublic class ActionGroupDemo extends SwarmImpl {/ ^$ _* R8 f+ C- w/ x' g# s
ScheduleImpl schedule;
( ~# {3 i( U- X$ h4 n ActionGroupImpl actionGroup;
3 y9 G3 V6 u* r; E% E9 ` ListImpl list;. ~: T& o6 E- _+ ?% k
char Id = 'a';
7 Q( U& M7 I' c* l; J6 s
2 P) \/ f1 \" F% L7 ? ActionGroupDemo(Zone aZone) {2 s# L1 N. K8 ]( A$ }" J
super(aZone);, a8 e% R0 _( j7 A$ O& F, g5 y1 ^
list = new ListImpl(aZone);( \8 ~: R8 K9 c8 J2 t7 G& u2 c7 _
swarmSetp();
# A3 r$ b& s$ b9 B9 f5 Q actionGroup = new ActionGroupImpl(aZone);, o9 s+ F9 D& X9 L7 E/ v* q
schedule = new ScheduleImpl(aZone);
$ T; M8 g; Y0 o# p try {
|) \3 D9 t; g' Y Selector agentSel = new Selector(Agent.class, "agentStep", false);5 H/ m* ^: E t: {" S' R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ [* l* k* }2 n+ Q- k: Z% C
3 d4 a( |5 D8 ^; B$ v j% x0 C7 @! e actionGroup.createActionForEach$message(list, agentSel);
/ p, F" I" Q1 P n3 R! z- f7 w/ E6 q actionGroup.createActionTo$message(this, swarmSel);
) E) H" G& {, S6 P# ^ schedule.at$createAction(0, actionGroup);: O( m( d3 t4 D4 i' T* B
schedule.at$createAction(1, actionGroup);* _2 a6 k. V1 o4 }4 U' q
schedule.at$createAction(2, actionGroup);9 t, z6 ~; k9 j, }, S9 O* |) Z
2 j$ ^/ q* ^# f0 x2 q
} catch (Exception e) {
& S0 h) b2 v8 h, [+ [ e.printStackTrace(System.err);
, A7 L0 t$ i# [ Z //System.out.println(e);4 C1 {4 Y, {6 _ G; q
System.exit(1);
5 G/ q# U1 L! D+ N) i6 s8 i }
]8 m, S) i( I& D c( G) C3 Y- {7 y
, K' P8 j' S5 Y- K8 Q2 T } Q7 Y. h0 B. A: e4 k6 d
* N/ C% t" R X, {- t* Q
private void swarmSetp() {+ R- O9 G$ l( j) G* \
list.addLast(new Agent(Id));5 a9 |, Z, H% l& L+ |8 z
Id++;
4 {5 N( L' ]% W2 I9 ]2 f8 ] }4 ~# s* g1 u7 D
' U0 Y5 U$ z+ f) ]& I public Activity activateIn(Swarm context) {
2 C8 Z( o+ \9 [/ l9 Q1 S4 a super.activateIn(context);
5 E/ C U! u3 v( i9 j% J schedule.activateIn(this); U! z0 E3 l" q) A1 P
return getActivity();7 h. ]& p% B, U( ? y- }3 R
}
) G9 V3 Q/ c1 M1 `9 g- l; w7 Y5 |) ^- D: R) l& X
public static void main(String[] args) {% I. n2 X& ]; l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
^0 D7 `0 V( Y+ u+ b# K' M5 E Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ U& x" m- B8 c0 L0 _ swarms.buildObjects();
) i- }/ o9 R# {1 x: K3 q3 L swarms.buildActions();2 u4 t/ F; B, w
swarms.activateIn(null).run();
( O! ?! D( q6 k& T }' C* J& b3 t9 r. A, w2 z" I' v
2 B8 |% _# X1 K; F$ j
} |
|