|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
r ?& d* Y# q: h0 \6 ^3 l7 Y
. W3 ^% X& L1 G T, x$ A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) N- L0 {: m" X* p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( q U% `) W8 ?4 w" \
swarm.SignatureNotFoundException
! Y% d* k ~& Z9 |2 ] at swarm.Selector.<init>(Selector.java:76)
; U9 R1 N1 a5 E' j6 e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( W) Y7 |+ E; h- {( Y3 t& K
at ActionGroupDemo.main(ActionGroupDemo.java:67)# G* P- G1 k% k0 k4 P- o( m
& B0 g+ D# K8 i P+ w
$ a; [' e$ k/ r2 zimport swarm.objectbase.SwarmImpl;
; g) H, ^% R# }' Zimport swarm.objectbase.Swarm;
/ }9 p4 J) k+ v/ O5 Z* g8 ]import swarm.activity.ScheduleImpl;& v& f0 F" r* l; R- ~
import swarm.activity.Activity; V5 b/ |) A8 M( G! {# x- b* h
import swarm.activity.ActionGroupImpl;$ q2 D+ _4 {) ^+ f8 `7 ?3 n% ]
import swarm.collections.ListImpl;1 |! t6 Z- J" s$ ? S
import swarm.defobj.Zone;
1 e1 R8 Z, Z. Q& \/ Yimport swarm.Globals;
1 o2 \" o6 a/ v6 B4 }import swarm.Selector;$ p; [* X! u8 `4 ~+ K5 F0 T
import swarm.activity.ActionGroup; 9 X: a' W0 H5 |0 g+ ^" Q
class Agent {$ G/ u+ G" t4 z) ]% d2 o. s6 I/ l
char id;
' D( \3 P: y! w4 f+ S" ~" d7 ], G, R# y4 w2 S
Agent(char id) {
1 T: y+ {* x3 p" K ^7 J9 l this.id = id;
4 {2 p0 c+ |4 S4 m0 s }
' a+ I' P \- U) C/ K
) y2 J( B1 B1 A0 x1 D4 q7 Y' | public void agentStep() {
, \. ]5 o1 g" u% w/ z* @6 K$ o# O System.out.println(id + ":" + Globals.env.getCurrentTime());% `; m% t. m; j g! Q; x" [+ X, d
}0 s$ S# o1 I9 h# T
}
: Z. {5 q& F3 v4 r3 R7 w& v$ @+ U$ K3 K
public class ActionGroupDemo extends SwarmImpl {
. }+ W' f: N4 S# ]* Y% j7 V- i; T ScheduleImpl schedule;/ a3 Z5 |8 j9 b$ l: n
ActionGroupImpl actionGroup;9 F% x7 r4 p. E, \6 _* s9 n. F3 G
ListImpl list;9 c2 t2 ], C/ S9 ?! _
char Id = 'a';7 ^' e+ I7 u. L/ i2 O
0 K- [& d; g7 |. G/ P
ActionGroupDemo(Zone aZone) {
1 F' y1 g+ k5 @ super(aZone);1 `9 A! N( T ~/ j2 E
list = new ListImpl(aZone);
/ T2 L8 j* v! y7 E( S swarmSetp();
/ b7 P/ a8 T m# _ actionGroup = new ActionGroupImpl(aZone);
2 X9 c7 l; N8 \' L& `$ v schedule = new ScheduleImpl(aZone);9 w$ \4 t J! a, C
try {; `- @9 C D" u' _" j
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" U3 F1 O( s* q( a# Q* _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 Y! X/ j/ C, `2 e 1 V# M: O+ n( e6 B
actionGroup.createActionForEach$message(list, agentSel);3 Y0 B) K5 ?0 ^5 w- j. ~
actionGroup.createActionTo$message(this, swarmSel);7 g5 V* w3 P$ Z+ X( D$ H
schedule.at$createAction(0, actionGroup);" m$ K( _- @5 Q
schedule.at$createAction(1, actionGroup);8 D% E& K0 H0 ^" a+ h; p* q
schedule.at$createAction(2, actionGroup);
* L5 {# p, V$ M4 J6 v, }% T
7 Z& x* ~3 `! V8 P1 w3 W: D } catch (Exception e) {+ r, x' R9 u9 V
e.printStackTrace(System.err);
! |) M4 ?" l3 N //System.out.println(e);
! [1 M; a ?+ x- Y5 ~5 }, t System.exit(1);) P3 W, _+ L" z/ Y8 e' ]+ {& i/ e
}
0 R% W" |+ w( q6 a3 m) V: K7 W. E5 E7 P+ K( H0 K
2 f- h/ L; u/ ?
}
0 k6 s9 ?5 D5 o5 V$ k1 b* r9 h* i/ y7 p' [+ W2 Y5 k+ V/ \2 [
private void swarmSetp() {( P% y6 C6 e. U2 ]% d( Y' ~ r2 w7 |2 e
list.addLast(new Agent(Id));
7 n, {& Y' c9 C) r1 J1 W Id++;
7 m. w- M3 G' P# E: _& H }7 g i+ i' m) P) t7 m% W- Z1 N
9 |- y1 J8 }% o) L
public Activity activateIn(Swarm context) {
U4 l9 z3 q. M# A3 d+ s$ B: I( J% K super.activateIn(context);
5 C" R$ A- i6 I6 x* g/ B# g schedule.activateIn(this);$ n% f( h' H9 a5 w* H% n
return getActivity();
4 Y# V! Z: i8 K9 ?6 W }0 y G: v8 \ v% b$ Q- u
& a+ d9 Z! I k& E2 {
public static void main(String[] args) {+ p' |' y7 _7 s" v7 ]9 l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& l6 |& t4 N. I: R6 @$ l Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 D0 |8 W1 W" l swarms.buildObjects();
e c5 P r3 p" S( N( v; ?' x! I swarms.buildActions();
; z5 r4 Y2 g- n* u# A, q swarms.activateIn(null).run();
4 C/ N' x+ B1 Z% _$ ^5 Q }. U7 S) e# j, u$ c( C
* a) t9 K$ Q3 l! S& X1 c+ v} |
|