|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: X3 k. ^8 p& f b: ]
; h3 r. D4 y( r, B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 t$ O R! z1 r' e7 }9 F* ?% L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' u$ s8 e& X0 B( Q$ \7 Q* y
swarm.SignatureNotFoundException
4 B1 A; W: T( @# S0 m at swarm.Selector.<init>(Selector.java:76)
$ F. C# z$ z* J& a# e/ f& X at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; n# o, s. P: ]+ s z% p- U at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 z9 h9 R* K* {! B& x6 ]" R- p/ y3 i3 v% `7 i8 b7 l) L l
, q, a1 q. Y/ r nimport swarm.objectbase.SwarmImpl;, b- x; V: A2 @1 {$ g1 o# t
import swarm.objectbase.Swarm;4 O; H! C+ I5 r i: S$ W
import swarm.activity.ScheduleImpl;5 U- v! f' R6 S7 s3 `! e
import swarm.activity.Activity;6 p+ V; Q6 l% s* T1 l! J
import swarm.activity.ActionGroupImpl;
8 ~5 r I! }' J9 Q- Pimport swarm.collections.ListImpl;
8 c/ N& v8 Q% J+ j1 k2 A( Eimport swarm.defobj.Zone; / \. X u0 J; j4 R; o. _
import swarm.Globals;
& |4 z3 U4 m* T0 x$ u1 \5 fimport swarm.Selector;
- x) P5 j% r R6 D: E) v: v% jimport swarm.activity.ActionGroup; S8 I9 h! z8 ^/ K# }, S- M9 @: x- U
class Agent {
' E* H ]" R' ?3 f char id;3 h' I0 m5 g* ?: t( I( a1 f4 D
2 c& U }3 M9 E% B5 s Agent(char id) {
$ \6 m! i; [' U+ l, x6 c this.id = id;
( g" f3 J: x# R a }
: ^9 V( b2 R- [
6 e" G, {6 W* b# G4 E0 v/ z public void agentStep() {/ U7 z0 H7 \ M S
System.out.println(id + ":" + Globals.env.getCurrentTime());
2 D' X: d/ S2 a" b3 i ~ }
, q7 E/ t# f4 _' J8 }}) g! n$ A. l7 D+ U V
! u k9 v, [1 e0 g4 J# B. }- @! Cpublic class ActionGroupDemo extends SwarmImpl {# g' l5 k% m9 ^$ P! h% F* ]
ScheduleImpl schedule;
- c M% L* w- R- H ActionGroupImpl actionGroup;
% _3 q2 `: Q) R, M ListImpl list;
" H, X: F* m. j" c! }+ T char Id = 'a';4 Q* ^! k3 \- _- H$ s/ Z' M) l. o
7 f7 Z# m' r; J: }$ A$ x8 u
ActionGroupDemo(Zone aZone) { H3 {& Q0 L2 t
super(aZone);" ]5 d6 f3 B' u* D2 ~. J
list = new ListImpl(aZone);* X9 H! i9 \" H8 L- t
swarmSetp();
' Y( w* d( `% _# }0 \& T8 _ actionGroup = new ActionGroupImpl(aZone);
* t% G5 B: Z) G1 F+ [& ] schedule = new ScheduleImpl(aZone);
+ }* r6 a* s& V$ m7 e' G* F1 P try {
; H$ a/ B6 t% y8 o, e0 @! Y8 x Selector agentSel = new Selector(Agent.class, "agentStep", false);9 _% }3 y2 I# ^8 k1 W1 ?8 Q- B! a6 h
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 B0 I$ U* j; G4 X2 T+ ?( G3 N
% Z& i9 C {. X2 f( H actionGroup.createActionForEach$message(list, agentSel);
9 U5 ^. F& p: ~- D% v, Y6 @+ ~ actionGroup.createActionTo$message(this, swarmSel);
: Y$ }0 r: Y" x5 }8 c6 B8 x schedule.at$createAction(0, actionGroup);
5 o0 o; w V, h9 r& `$ B" y' r schedule.at$createAction(1, actionGroup);1 ^( \- m; n2 Z! L4 g4 u4 u
schedule.at$createAction(2, actionGroup);8 R# z. p! R4 G% [4 G) I
+ {5 `% O( j7 I w( c) {
} catch (Exception e) {; R( h" U; `5 i# x" D# \
e.printStackTrace(System.err);" g+ r( i% Q/ d3 Y( U8 M
//System.out.println(e);. x' E- i i' b* v* Q
System.exit(1);% |% r. G1 z, i: R& s4 y' _4 ~
}
* r7 P+ m. E: _9 t- K) @
1 ?% t, B6 X1 ] J" |( }: f! o% |: p N' l1 S
}! Z1 |2 t! ^, d a) m
# s: K$ V8 G z1 ~ n private void swarmSetp() {
% w1 P! S) E8 u list.addLast(new Agent(Id));
# M+ A1 a+ p4 B# z0 H* ^, V- z Id++;
4 l! M1 ~7 g: p2 c- Q } }
2 {0 }7 W' W/ H2 X
% @) }: t6 O8 G. l6 u public Activity activateIn(Swarm context) {8 T& ~8 h$ \# M
super.activateIn(context);0 W( d+ c, P9 z7 F
schedule.activateIn(this);
T7 c2 @7 [/ F% x4 |& W return getActivity();
7 C( a3 C4 v) }. c) A }
; B6 ~7 ]/ {& _1 f$ B9 n$ I! t: w6 u- p3 f
public static void main(String[] args) {( G( n. Y- L' r+ |* R3 V
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 m/ C+ f* q* L8 v Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 Y" R; P) U7 |; x0 n% E, j1 R0 q
swarms.buildObjects();
* [; }# ~2 F4 E7 N swarms.buildActions();# o! W$ v9 p' I+ Y" C' x! P, ^0 m
swarms.activateIn(null).run();: V% S* Z' f6 N) ~
}
; u, r6 x, b1 v' q# e2 [" \ ^! ]! r! a% S, i% F
} |
|