|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- {5 p4 W9 `. V5 D, Y
# c M! y1 n( c) V/ I* {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: Z1 V- k7 n1 d, w6 B% _- t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 h+ Y/ B! }" yswarm.SignatureNotFoundException) I' `7 g1 l8 y( k( F1 s2 l
at swarm.Selector.<init>(Selector.java:76)
, c% z# N: S$ o7 F% q4 a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 O- ^/ _" L3 k. M9 K7 I2 y at ActionGroupDemo.main(ActionGroupDemo.java:67)
' o; I# F9 }- W+ m5 J
) e. x9 G( d4 X7 h( L# F' J+ Q
% c8 ]* M8 o7 |' T* S4 yimport swarm.objectbase.SwarmImpl;
' T# n$ K& f4 [% |1 a% B. x4 c, wimport swarm.objectbase.Swarm;
2 S" c9 E- T2 j+ }6 k6 K" m, nimport swarm.activity.ScheduleImpl;
& D5 K/ Z( E9 j3 nimport swarm.activity.Activity;/ @0 j) O3 r/ ]2 x9 ~/ F- q
import swarm.activity.ActionGroupImpl;- o0 R0 `2 U7 [' B( y
import swarm.collections.ListImpl;% ~+ F: Z$ g* K- X0 K- _8 d
import swarm.defobj.Zone; 4 J7 ?1 j2 t' r* a( H5 E; |
import swarm.Globals;( e6 ?6 j$ e; k: A8 e, Y
import swarm.Selector;, d- i6 Y2 W8 w+ R
import swarm.activity.ActionGroup; 9 i e7 i3 r* v9 O" U
class Agent {) k0 j2 P3 }+ v: Y% C; j# L
char id;3 J3 g; E+ |3 L- K
# E+ {2 j6 E* K6 Z
Agent(char id) {0 D. n3 h2 z* K. n2 d2 }+ u
this.id = id;
6 @0 l2 T+ ~3 g3 r }5 o- S9 A {6 u5 S& N& t* n
8 r, I- i3 M$ L* }8 p public void agentStep() {
4 D% q0 P2 I4 b N: w System.out.println(id + ":" + Globals.env.getCurrentTime());
/ c2 [$ Z' r; D9 F; K5 N/ |) T }
' r' t7 V3 s1 K" G* W4 \* o. P} I9 D( u, b* \1 w
% W+ I7 z" D) r6 n* Jpublic class ActionGroupDemo extends SwarmImpl {( M; j9 H3 ^/ I$ k: o
ScheduleImpl schedule;$ p( u7 T0 Z9 l) ^0 C, x# P: z
ActionGroupImpl actionGroup;" `! ^' F* O' q* `( K
ListImpl list;
& P7 j# D- h$ M$ d# c4 U char Id = 'a';
# o5 n% @3 F1 F/ o' R! d
, B. }1 H1 y7 J; t; H( o ActionGroupDemo(Zone aZone) {8 V& ?7 W! l- Z
super(aZone);3 O# h5 W% S7 R; Z k
list = new ListImpl(aZone);
M% y9 f i2 k6 L swarmSetp();3 j% H H% @) m! X
actionGroup = new ActionGroupImpl(aZone);/ Z5 P' r- t; K" a8 p0 }5 U
schedule = new ScheduleImpl(aZone);
3 f+ j V; s# y4 v9 x& A& o try {+ U, V3 \4 Z! u, E4 l5 K
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 I* \& Q5 q6 a) ~% v8 m% W k: Z) D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( x& U9 X3 ?7 z6 T% b: C' O
! ?+ `& d1 k( n, Q: P/ K9 Q actionGroup.createActionForEach$message(list, agentSel);% N' ?, y! x$ h* w: R
actionGroup.createActionTo$message(this, swarmSel);) w% p( j- k: R- j# h" b
schedule.at$createAction(0, actionGroup);- ^5 w+ k3 C8 {( y$ g' x6 l2 i
schedule.at$createAction(1, actionGroup);+ p& `& c) F( X0 K
schedule.at$createAction(2, actionGroup);. J+ O8 p* J, _
4 E. N0 m" D6 h3 r0 M' ~5 E } catch (Exception e) {' D8 Z4 g5 j; V1 ^: w, M
e.printStackTrace(System.err);9 @8 y2 P I3 d
//System.out.println(e);
5 K9 q! c, R( w! O System.exit(1);3 R' H0 X& J! {* a- T( L: F
}' x; d& v% z/ \8 y; W. J1 I
! R, P, \; Q9 X( L6 d* T) b
1 J9 A! d0 D4 P' ?" y3 Z+ Y } g+ ]) f. _ c3 B7 L
$ q8 q2 F1 t, @' z z private void swarmSetp() {
* _" y8 v' E" u) j b0 b list.addLast(new Agent(Id));5 \4 p5 N0 J$ q2 L; ~4 y0 Z) ~! g7 Z: X
Id++;* d8 R% E* V: I( T; f7 @
}! Z9 I! Z; f( d
0 h6 E# @) K# j& T, {
public Activity activateIn(Swarm context) {3 u$ c+ ^% E" b
super.activateIn(context);2 F! s( s& F3 I [* t
schedule.activateIn(this);0 I+ L% f1 z1 I r2 Y; I2 ^
return getActivity();
' u8 |9 J J$ Y+ t }6 D2 f; X3 |1 W
$ _8 T/ F8 M- @- h' |6 j# Q8 `
public static void main(String[] args) {
3 @/ f5 b3 I$ ]3 `6 o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# G5 p5 X8 N+ A# c( I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, }4 u4 _ A, y c
swarms.buildObjects();' F, Q# I# ^) Q7 C) g6 M( K% a7 R
swarms.buildActions();
0 _! p% I3 D6 ?- s* u swarms.activateIn(null).run();1 e2 P2 O! N8 m
}4 V, P- X9 b! M* N( a) A
! i1 p9 y0 h/ U+ _. V# l6 h1 s
} |
|