|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 z4 x' t, U/ f! m
. F: \7 c; e2 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' t3 |, x5 \$ V0 l. J+ f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." S* x. U$ W7 I3 Y
swarm.SignatureNotFoundException, a8 L4 \6 e: U. j. @3 R3 `
at swarm.Selector.<init>(Selector.java:76)
* d7 k" r6 q3 m at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 k( |1 x/ w& u/ o0 e% ] at ActionGroupDemo.main(ActionGroupDemo.java:67)% y- u9 c+ b- \3 |! x0 k
% q6 F& l# o7 Y0 u. p! R
" o9 v @3 X- O+ V. O
import swarm.objectbase.SwarmImpl;
/ o+ ]4 m, R* ]3 F# Pimport swarm.objectbase.Swarm;, |( i3 k- C+ ]& z0 \+ |3 b7 O
import swarm.activity.ScheduleImpl;! |4 |0 |. Z* R; u+ Z. \+ ~
import swarm.activity.Activity;6 W; Z7 h" S8 w; r
import swarm.activity.ActionGroupImpl;
; a9 ?' i3 f% o2 e$ C! \import swarm.collections.ListImpl;
' e Z _ r" w- V' O, M u( ~6 [7 \import swarm.defobj.Zone; ) R) \6 O/ b; g& r
import swarm.Globals; M- o, N' K0 f/ M
import swarm.Selector;
g6 Z$ g3 k% c) Gimport swarm.activity.ActionGroup;
w% [' A' |" w# I2 ]# S5 `2 Cclass Agent {" P8 q8 [ B9 t: P$ ?0 ~
char id;: X3 u4 ]( d7 Q h
, @. G# A8 j9 U9 `) n2 r+ k
Agent(char id) {
+ t) }8 D8 L, e/ b- b, x E this.id = id;7 m7 G# d, l- y3 ]
}
% h, U5 c) R% Z; d0 u/ J! e$ s9 j
! z a% k( [' w( a' { public void agentStep() {& I5 E+ I5 d: W T# a! Y$ J
System.out.println(id + ":" + Globals.env.getCurrentTime());0 k, q4 O( g5 | L0 I* p* X% ]/ V# K
}+ e, m( c$ x' M( F" P7 k( ~
}
+ m' Q5 W" ?3 n1 L$ ?9 h
6 p' W) V; }3 B' d+ L: o" u# _9 vpublic class ActionGroupDemo extends SwarmImpl {
$ E4 Y2 V9 o9 b. ~ ScheduleImpl schedule;
4 \) ^# e+ a5 Z" L/ e. r2 `& J ActionGroupImpl actionGroup;% W: B* L. A' m, X ?8 J( E
ListImpl list;* J, h% f+ H1 O" S$ P9 x0 Z
char Id = 'a';
( \+ O5 [ Q, l& W' d- C( ]. a! V) S& ?7 ^3 b, F8 B9 R( o
ActionGroupDemo(Zone aZone) {
- a0 z/ R: t( }1 n& n* B- g super(aZone);9 d+ L7 C( n+ M7 f0 U2 z/ U6 P
list = new ListImpl(aZone);! g& b* M* k$ e$ v% j$ h7 C% m. N( `
swarmSetp();
0 C5 X: j( @( `6 M! R. @' o actionGroup = new ActionGroupImpl(aZone);
: K$ V% ]7 z( Q8 [# I3 K! e9 L schedule = new ScheduleImpl(aZone);) f7 ^( _5 L9 q) R
try {
4 r& @: ], b! Z, a- E Selector agentSel = new Selector(Agent.class, "agentStep", false);/ A6 _, f$ i- K- r Y1 y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 U5 v% N5 C( a' c% N
% J6 Z9 r) r5 O actionGroup.createActionForEach$message(list, agentSel);- ^6 t3 x# u; A0 |; J/ D7 p
actionGroup.createActionTo$message(this, swarmSel);. V# M7 f9 g5 g A$ ~& u+ \
schedule.at$createAction(0, actionGroup);$ u5 L' L* V$ I
schedule.at$createAction(1, actionGroup);
1 T" F7 \( P' r4 w# A6 Y- y, U schedule.at$createAction(2, actionGroup);& E- q' r9 h# q! g2 F e
3 x8 _- g$ X3 d% z' k/ j } catch (Exception e) {
5 J: g3 R0 r2 x `+ F e.printStackTrace(System.err);+ y, L- W+ s: g/ y4 T* z% W0 T& b+ O4 B
//System.out.println(e);: v, V7 x6 Q7 K! I3 Z1 O3 U
System.exit(1);
) ~. p2 z5 X$ `- O% r6 \ }. Z& V {$ W2 x2 E& }- b! A/ m! H
" t. ?; t6 u6 i5 s- S$ V
6 Y2 \$ g9 t; \5 b& K1 P }
7 y. h1 t F) K5 J7 i% h3 w! x& m- y( ]% g7 w* o0 z( s
private void swarmSetp() {
5 b, a! ?5 l: c" b. m* ~( ~) K list.addLast(new Agent(Id));6 d0 ?5 h7 l* o$ H, I$ `$ z# M
Id++;
5 i" Y( }, X1 e" i) s+ c- k }2 ?7 `$ X' o0 q! v4 [: V
% S# x6 v$ F! D3 m" o) ^2 _
public Activity activateIn(Swarm context) {
/ i/ Z$ X* m. I$ M6 G( E super.activateIn(context);/ G% a2 u, A5 n$ a5 R" ]6 M
schedule.activateIn(this);. l- {) H' F) b: v" x+ s5 x# N
return getActivity();# g$ N( N' ~4 J
}& B; K$ x" ]9 k: u, M
0 ?+ i5 k7 Z; l u# P public static void main(String[] args) {
3 U# u) a, c7 T3 M2 m& r Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ u0 T2 F) X: I" H) b& w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
l& x0 b5 G; ?* q) b( |" i swarms.buildObjects();: q+ I" n3 e5 f/ m
swarms.buildActions();
& ^0 C. Q4 z( @ swarms.activateIn(null).run();4 |$ D4 R, M* E( j" [3 v, j
}
, o6 t; a9 O7 P
# ~% S3 d9 f0 j} |
|