|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & p# o0 T- P# `% w7 o+ }
$ }$ H. \ r- k6 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% @" d5 z) G4 u/ O$ b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% p* Y% @9 u% h2 t. fswarm.SignatureNotFoundException
, k4 X8 s- R, o7 }8 C at swarm.Selector.<init>(Selector.java:76)
4 ]. m5 L n0 C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 v2 w# l, T( d* h at ActionGroupDemo.main(ActionGroupDemo.java:67)! u4 a3 _9 a- z9 g o
. C/ N: g+ Q7 j: i3 }" B! T: V. f5 _7 H
import swarm.objectbase.SwarmImpl;
- s/ x8 \" G, |! g( s( Gimport swarm.objectbase.Swarm;7 s, V2 @) R K3 e3 Z- G
import swarm.activity.ScheduleImpl;
( E% Q+ ^% O9 dimport swarm.activity.Activity;
$ M: T+ R1 E8 m6 d7 v( o; N* A/ N* }import swarm.activity.ActionGroupImpl;. y. k# o3 I/ M- ]" R0 ^$ R# G
import swarm.collections.ListImpl;5 A6 Y# F+ x4 B1 `7 G: I
import swarm.defobj.Zone; 2 R0 [ Q- P% {4 @% l7 Y+ v
import swarm.Globals;
7 @4 A9 `, V6 O. v) J4 v9 t, `2 Ximport swarm.Selector;
6 S1 X' n" K2 }4 V& y7 \import swarm.activity.ActionGroup;
# _5 |: ]+ U6 T: ?( f) E5 vclass Agent {) R0 L% |9 X9 w6 f; I+ H; K
char id;7 I. A7 b$ a! z' Z- i d0 r
3 l) j; E9 r' i) t( J3 M5 X9 q
Agent(char id) {
+ @9 O' H+ j- a2 z- i$ e this.id = id;0 x: `2 Y, `. ~% U! f9 p% \& l
}
+ F# T! i, B R2 a( m
* ^ j' t. D& g& ^- ^ public void agentStep() {
4 x! z; K8 s3 ^$ b4 ^* t5 l System.out.println(id + ":" + Globals.env.getCurrentTime());
( n4 _) P& s, ]( {# ~* l }
" U! S4 ]) ?; c7 H" {}
" L0 D4 c% o0 ]5 i/ z! e# n
, O9 Z) r: i, e' J$ }public class ActionGroupDemo extends SwarmImpl {
0 f3 r7 V# l' G$ B ScheduleImpl schedule;
: T a+ r8 ]7 \/ C6 y2 O/ j/ c+ m ActionGroupImpl actionGroup;
& k& P. J" x& B0 `9 p: {: t ListImpl list;
2 G+ u1 F+ A+ c5 D char Id = 'a';& d) z) |# @' S3 A# ~
; r' Y* f: Q; S3 y; l2 B( Q
ActionGroupDemo(Zone aZone) {
" ?9 E2 i# ]% x. R: J super(aZone); h( V, w2 }% _- B4 `
list = new ListImpl(aZone);+ A) J& h) y( c7 D- m1 K
swarmSetp();; r4 t; R$ ]5 g9 N
actionGroup = new ActionGroupImpl(aZone);. o1 e% I4 i9 ]0 g
schedule = new ScheduleImpl(aZone);( [2 O* C1 q7 X0 b' W
try {
5 Q+ N. U7 b) e3 C) i: M( m Selector agentSel = new Selector(Agent.class, "agentStep", false);7 d1 _5 r! a- t9 Q: F/ a5 w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Z" ]+ {7 m8 f
) S" K1 s t, ^, V/ Z( C actionGroup.createActionForEach$message(list, agentSel);6 Z6 J, v6 R5 L( `* v) F! d8 \
actionGroup.createActionTo$message(this, swarmSel);
/ L) v- U0 z* \( ~- E+ m schedule.at$createAction(0, actionGroup);; \8 S2 T8 E2 D7 \, P d
schedule.at$createAction(1, actionGroup);8 f" W e; t" d
schedule.at$createAction(2, actionGroup);0 _& d! ]4 P- K9 ?. _
' e8 _% `7 p6 Y) I
} catch (Exception e) {
- c! Z" O1 s3 [ P0 ~ e.printStackTrace(System.err);- u% n4 j# E) D' ?
//System.out.println(e);- l! u2 s) ?0 A+ ?& [2 ?* y: }
System.exit(1);
1 D2 g* ?$ I8 C' ~" a8 g F }
: |, @ \5 s S* I; _( g" k3 j! W- P, b: t( Z2 `
- @; i% w% v* _5 N- s
}
6 {4 _' v) S- }1 T1 b( A3 }. q
& w W: Y, ]: Q' `5 @* q private void swarmSetp() {1 _! Z- m) v6 W
list.addLast(new Agent(Id));! r/ x; }+ E1 j% q. } Z
Id++;' k* T* [3 n: j/ @
}; B$ A* f$ B: f8 O: C+ ^
9 p% F: ~) n; j1 g public Activity activateIn(Swarm context) {& ?7 m5 r$ T0 Y- x
super.activateIn(context);% e4 X5 M" c+ s# h$ Q1 ^
schedule.activateIn(this);: @' ^% D) T1 S1 Z
return getActivity();4 B% y4 H' i1 \/ u' G8 H
} X2 F6 j0 ~% F/ T) {: ]! P1 | F
& |) F* g5 s [% l. Y: O9 M
public static void main(String[] args) {
# |; V- B1 x2 F6 s8 ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
N; s2 K+ X, H7 ~) p Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! y1 P, d- q9 ?% v' ~ swarms.buildObjects();5 S @3 J4 R6 r5 m# C$ _7 l
swarms.buildActions();" f( b# M+ M$ i+ f& R
swarms.activateIn(null).run();, y# @" T1 t. I! n' F3 A
}6 p ]0 u$ H+ {& u* c) H* s
4 G& S7 u& P8 y, x& b7 M} |
|