|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 }& }* u& A8 [9 g4 l- `: B+ G; Q E5 U% i7 {2 \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# F' `: ~$ ^" T. V, _% E% z5 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( {& x2 [4 G5 I4 s. }( S1 j
swarm.SignatureNotFoundException8 ~: ^9 {+ ~" ?1 C
at swarm.Selector.<init>(Selector.java:76)
& `# |# G+ j- X% w( q5 T% B2 r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) M+ X) Y% Y8 Z6 a) ^& F7 g
at ActionGroupDemo.main(ActionGroupDemo.java:67)( O3 g6 O+ y/ I) V( y% w
: f, o! E! y$ w0 ~+ `( H
( t8 F- Q2 ?; m- ~import swarm.objectbase.SwarmImpl;
5 C5 Q# m2 t$ Z# Q+ d& @import swarm.objectbase.Swarm;# [4 L' q2 Q" k5 p# F3 Y/ U- Z' i9 V
import swarm.activity.ScheduleImpl;; b+ p. d `% W0 {9 L8 D. s( o
import swarm.activity.Activity;8 G t' w1 [% n: w+ z
import swarm.activity.ActionGroupImpl;. z- M5 L$ c, w- D6 N- C
import swarm.collections.ListImpl;1 @+ W# Z; T$ r; A: H7 ~! m
import swarm.defobj.Zone; , m/ x" H1 \, ?! m7 Y3 l
import swarm.Globals;1 ?0 v$ ?# S' X" J% W0 k
import swarm.Selector;
" s1 d. F$ h n2 S; {import swarm.activity.ActionGroup; : P7 ~0 T% m' q$ e" H1 G* E
class Agent {- ~- O9 y# \" P1 Y
char id;1 G/ }" A8 x" {# X3 p" E4 {2 n5 n
1 [7 I( |; ^( T7 r, l- Q4 Q
Agent(char id) {
6 X! _9 U* r9 ]' T$ w/ F this.id = id;
$ `2 e2 Z( o' P8 M! J7 ?# h }* n1 l/ h. {$ a2 S2 A
& p5 o m7 H) Q- E
public void agentStep() {0 |, B1 g s: G* ~; w
System.out.println(id + ":" + Globals.env.getCurrentTime());5 ~; m: V q7 }4 h8 @" O9 O
}; x$ _. e/ z) b) s* C
}
$ Q6 K+ Z& K, e0 }% g
) F* K9 d, D# W2 L$ a& {+ _( Lpublic class ActionGroupDemo extends SwarmImpl { A0 I8 T3 N% K
ScheduleImpl schedule;
2 N- L3 S, |. B) x2 { ActionGroupImpl actionGroup;% |3 W$ z& j) u2 X
ListImpl list;
7 n h6 g% }7 z& h char Id = 'a';* U+ Y8 u' ?+ [) q! x
" z4 h% N/ L5 j0 k3 m9 E9 F6 I( u
ActionGroupDemo(Zone aZone) {! M' }( f3 p9 d1 F% ^8 G! Z
super(aZone);+ p3 E! c7 ^ O$ f; M, N& |/ z. `
list = new ListImpl(aZone);) D! Y" ]3 Z" f
swarmSetp();
! U7 i# _! Z6 X actionGroup = new ActionGroupImpl(aZone);
, A. `0 r4 _" l+ h$ { schedule = new ScheduleImpl(aZone);+ l2 l8 J$ J9 r* u- D4 I
try {
" K; o, c' k O" H' t) l Selector agentSel = new Selector(Agent.class, "agentStep", false);$ O" r$ B- n I+ R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ `* u6 h3 y9 O$ \7 S2 ~ ; c' U8 Z6 V* i7 p$ _0 t
actionGroup.createActionForEach$message(list, agentSel);
1 q8 H2 K8 Z. f2 U0 ^ actionGroup.createActionTo$message(this, swarmSel);
5 U ^: Z, i; k D schedule.at$createAction(0, actionGroup);( X5 }# i( \: r+ ?3 ^+ A: E5 C" _
schedule.at$createAction(1, actionGroup);7 i- R H: O# T# u& W N# l
schedule.at$createAction(2, actionGroup); G5 [! p. Y* J
) N. e! Z% D' Y: N2 M' Z
} catch (Exception e) {! [3 o0 G- s$ f
e.printStackTrace(System.err);
1 |+ A$ |# L! S //System.out.println(e);. Q2 j% N& C0 t9 w
System.exit(1);7 ]& X( R, i, S2 j3 ~! }
}
1 ~) B; f* V9 @$ q) g4 W0 s6 _ x( i+ W+ i5 w0 D) L. X; r
6 x- U, |9 l4 i( \( b8 l/ n6 Q
}3 j, L* I2 O6 b7 P) c* K; g' @
/ ^' @, L. P9 U# b( O2 `2 N. k9 S
private void swarmSetp() {6 Y" c5 |: q0 N
list.addLast(new Agent(Id));, [3 u* R0 @) L6 h8 G r d
Id++;3 y8 w5 v+ b3 f" Q
}/ _3 s# W5 d5 s! C9 a* c2 ?9 i4 [- X
' V& d+ R8 h6 u% ^
public Activity activateIn(Swarm context) {
5 u% J$ L, ?# R ~ super.activateIn(context);
; b" i* C3 c' `% M8 J7 L schedule.activateIn(this);! c0 r/ t0 M. W" I. c; a) r
return getActivity();/ i+ |( O: n! e6 M! E" z3 G
}1 k2 i" Q' a3 X0 y) ~
- R5 H' l" h2 {! m- n
public static void main(String[] args) {
$ ^9 S, H$ m8 H1 c' j0 W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. b/ }5 @& o# j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& N6 N) g# G$ K" b0 H- u. I
swarms.buildObjects();- {, w% a4 @$ c
swarms.buildActions();
+ t5 j1 v) n6 W* ?# @ swarms.activateIn(null).run();
6 \/ r: S" P& q; ~; o/ \ }) E2 Y& z% K. B
* j9 G0 z3 A0 T} |
|