|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% O1 F/ V* t7 m, M
1 r( t8 ]6 |' a% O6 q- F8 s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% G+ M9 F9 {2 O6 G8 T+ V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." w5 V0 b4 }1 A$ S3 K1 }
swarm.SignatureNotFoundException
* x* _* f, q" _: ^- L4 N3 n at swarm.Selector.<init>(Selector.java:76). r% J$ e: i7 G* \1 [9 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ N1 r6 ], X' M at ActionGroupDemo.main(ActionGroupDemo.java:67)
! ~0 N, U: G! {) \" J2 Q3 q3 |& t e5 Z0 F3 [* O
4 k7 l9 f9 M% E) ?import swarm.objectbase.SwarmImpl;6 d/ T' a! i9 \0 G- y% n- d1 p! _$ }1 c
import swarm.objectbase.Swarm;8 i2 }' C* B9 n. s7 I
import swarm.activity.ScheduleImpl;
. a1 E$ S# U% W5 l2 }import swarm.activity.Activity;' t5 M- X# j/ }( f. }
import swarm.activity.ActionGroupImpl;
+ }2 {/ t( ~% y0 R: Q/ H4 jimport swarm.collections.ListImpl;
' y1 i6 O% g0 c6 T' Y- aimport swarm.defobj.Zone; + z" s4 f2 j9 x7 K- D2 W: G
import swarm.Globals;2 `& L5 H! K: O' ?* A& `) }
import swarm.Selector;& }+ L6 _6 r* N0 q/ R+ p$ s
import swarm.activity.ActionGroup; 1 D2 P; ]- z0 U7 H
class Agent {
9 P3 q# E- h8 t char id;
4 F: _1 x O( U1 X0 a) m: l- \) w
# q( D \4 S) m, l9 x5 o# r) c Agent(char id) {
' E( h7 O0 F& N; P) @7 {3 `- N# X* |7 Q this.id = id;
# Z# ]/ s6 g; R/ Z: h }$ w# S/ @6 i" B5 I$ g. }
. k- N, t- U$ r ?* f$ z public void agentStep() {( I/ Z, {7 j8 F: m) a/ ~5 K4 }
System.out.println(id + ":" + Globals.env.getCurrentTime());! s l# a( a9 _
}. v, \* Y, b. ` O6 K
}9 I$ ^0 `0 B4 x. R2 n7 V. U
c; w0 G G1 X( ?: P
public class ActionGroupDemo extends SwarmImpl {
. X8 r- R/ o5 @/ g$ P& {- Z, j% x ScheduleImpl schedule;8 s( r! E+ c5 q7 u3 d" D+ O
ActionGroupImpl actionGroup;
1 v+ D$ }! g1 v5 Y ListImpl list;
7 Z5 D4 u6 \% ]$ [+ q char Id = 'a';
& [" E1 Z( C& Z& z. N
$ k; W* j! w# ~! K: R, A; G ActionGroupDemo(Zone aZone) {
7 d7 ?3 t! q) S* u$ z. \) d super(aZone);+ y: h; B! w0 p* R( _
list = new ListImpl(aZone);; c+ s. i3 g- }3 Y" {
swarmSetp();. H0 D! A+ U: j- a U3 x
actionGroup = new ActionGroupImpl(aZone);+ C; \5 S2 _1 N) E" N: w
schedule = new ScheduleImpl(aZone);
8 y, p. j! e5 Z- M" u# l) H0 D try {$ C# Q$ }+ H5 U4 W! k. z
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ l2 o' P5 R2 N* ?* A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 {; }8 l# U# Z# `& A ! F4 K) x# Z) S0 s' G
actionGroup.createActionForEach$message(list, agentSel);1 M8 V( e0 O6 _+ n! Q
actionGroup.createActionTo$message(this, swarmSel);- b0 S$ b' r( @& [5 n1 s$ j
schedule.at$createAction(0, actionGroup);# w" A r5 m* w; L) o
schedule.at$createAction(1, actionGroup);
_* I; q* D A# R+ z, Q2 Z! v schedule.at$createAction(2, actionGroup);
* i* u* Q0 t) G
" h' h* O2 y$ w. e, _ } catch (Exception e) {& j: e+ t! s4 {
e.printStackTrace(System.err);
* J- g/ d# Y! L& B //System.out.println(e);9 r/ o/ f4 ` k4 Q
System.exit(1);* K* ]% \3 s! w e0 |; Q8 ?8 |4 t- q
}
, p* @7 E# K+ w" y3 H2 z0 M) [! ^/ H' C6 j3 X7 s& I. I( i) s
9 _* J5 Q" m4 z! s( | B4 U6 j }+ l1 _. H e. Z$ f. p2 m
0 `+ l+ ]2 [# c: k, O% h( P$ s5 D
private void swarmSetp() {* L+ \ T/ J, d& i& p5 T9 p
list.addLast(new Agent(Id));! d8 Y7 p! i! Z
Id++;
% b$ _* ~2 p9 Y! D6 r2 c }
4 v5 w+ q9 {% ?% w1 U
5 w+ H2 k7 i W public Activity activateIn(Swarm context) {5 U3 a! T3 a% O) z% m/ C% y
super.activateIn(context);
7 q8 s- \$ }8 n8 G" k5 r schedule.activateIn(this);: a( Z3 O1 Y4 w$ t- `( N6 W, L
return getActivity();
( h( ^" X9 _( _ }. X' V M7 [! N8 N, W
4 E* x( J h$ G1 v" @
public static void main(String[] args) {- M) m7 H# y# Q2 K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; ]8 N1 e- _4 {, m+ N4 J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. J" b* L; v4 N' r swarms.buildObjects();9 r5 \7 D' D2 F4 }
swarms.buildActions();/ ]( j- j3 @( j6 |( F" k: y
swarms.activateIn(null).run();( l7 @$ a, }( [9 c! N
}
' c: R% {5 |" j5 P+ W! H% A0 B x1 r. ? s# t* \
} |
|