|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 o/ ^- Y# R5 ?7 G
* g7 Z& h0 t$ i) H7 A2 ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! k+ {3 D/ J2 p3 n9 p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( T2 Q( r# N) i+ Q# T
swarm.SignatureNotFoundException9 O! F9 X4 v& _9 _8 X. F, Z
at swarm.Selector.<init>(Selector.java:76)' m; q& `1 y9 _; [, b8 r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" T& ]9 B q6 \- N at ActionGroupDemo.main(ActionGroupDemo.java:67)4 u$ R5 z: ^. Z
. C9 w3 \. {/ C! P4 N' Z5 ~8 F$ d; F6 c, V
import swarm.objectbase.SwarmImpl;, Z3 z* i9 k- @$ \' q( U
import swarm.objectbase.Swarm;
: X U/ C" |2 _import swarm.activity.ScheduleImpl;
0 d# s' }4 |; u+ kimport swarm.activity.Activity;
, _, H j, v. H/ Bimport swarm.activity.ActionGroupImpl;. W, J. k! k; r% q3 |6 i
import swarm.collections.ListImpl;/ N" y& z4 |2 r2 M
import swarm.defobj.Zone;
: b5 e8 } C- B: [3 E) D* u' Ximport swarm.Globals;$ r5 B% b" x* H; S5 w, Y( [7 m
import swarm.Selector;, Q; @1 I7 E( j7 Y' a- ~
import swarm.activity.ActionGroup; ! E/ ]( b" a. \1 a& e
class Agent {( T" `( C5 A& z# e/ p" h
char id;# A& t% x. u8 Z0 x7 l8 a
0 X! M: m, L- {8 I% j1 Y
Agent(char id) {- }: A2 r! x+ x6 m, H* i1 I4 J6 W- k
this.id = id;: t3 A5 a5 q) {% W/ O$ ]& K1 F
}- D2 n5 B( u& V' \' v- ?8 ^6 y
2 X A. N0 c' r) T- ^$ h
public void agentStep() {! y! u5 @, n F D& s' m- k
System.out.println(id + ":" + Globals.env.getCurrentTime());8 P! S" g$ [5 z, V
}$ p, }. z% M# i( F1 A
}
6 S' B- U. N6 P* C; i$ ~; b0 M
- S5 o* W: n9 g0 w# q" A7 R0 spublic class ActionGroupDemo extends SwarmImpl {+ h1 e$ S9 l8 L; i
ScheduleImpl schedule;
; |; B- W: T) K: |( l ActionGroupImpl actionGroup;
0 B$ p/ _: H: y9 J5 N ListImpl list;7 r# h9 F6 U% j0 _/ \1 D# @
char Id = 'a';% u- a3 B3 X# K0 ?4 v" T3 p- ^& s
1 n c; D9 V9 u' u ActionGroupDemo(Zone aZone) {9 ~: P8 t" }9 Z3 |/ \
super(aZone);! S2 C9 w$ @" k7 @8 x" K
list = new ListImpl(aZone);; w8 ^1 V4 C7 C. c/ B) b1 Q9 @/ `) k
swarmSetp();( y* h( l+ A# j3 h
actionGroup = new ActionGroupImpl(aZone);
2 j# w* [2 E/ J$ L$ y+ F4 z7 T, v schedule = new ScheduleImpl(aZone);, F! ?* t- m& g
try {+ i$ n5 Y5 M G% W2 [
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ V" Z5 V6 ]9 B5 O0 Y! g0 k A8 y( s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" n D' S+ Q5 O/ Z* e" ^
& o# {5 [# h1 z
actionGroup.createActionForEach$message(list, agentSel);
3 [/ v5 M1 o A" x$ p1 f0 v) K' Z actionGroup.createActionTo$message(this, swarmSel);7 G0 v7 V- b3 _3 C
schedule.at$createAction(0, actionGroup);
' ?$ `% u' I6 a8 C P- J schedule.at$createAction(1, actionGroup);
2 [' m* C4 ~( ]9 v0 u schedule.at$createAction(2, actionGroup);' E+ y) {9 F- J+ C F
" t% @$ w* B5 ]
} catch (Exception e) {
" I) w/ k( Y8 u6 Q8 V/ g! ] e.printStackTrace(System.err);
8 t9 X1 V8 P2 n9 H1 ^6 n2 o& r //System.out.println(e);7 T8 }$ ~# `; ~" `9 g# E
System.exit(1);, q. l9 \6 N p
}3 N& R- n+ A+ [4 V2 B4 g
7 H% k- H! d! `! }7 a& n
- D2 @3 `) J$ |/ ~
}
' r5 w! | k3 K2 R/ y! ]& c1 z3 p' A6 I' M2 K+ J: \4 {
private void swarmSetp() {& g5 X" c0 t& R8 C0 _
list.addLast(new Agent(Id));: Z* s7 Z$ J* o5 g
Id++;
5 d; T" g1 o+ f: z9 n) @/ _( m5 W }6 i% ~& f) J V+ \9 ~5 X6 Y
# _7 i( K4 G) {8 ~- X6 ~ public Activity activateIn(Swarm context) {( j1 H( [' X" r" P" ]: k" j$ @! U/ Y
super.activateIn(context);( B8 r; J& ^# Y: ` E
schedule.activateIn(this);# ?# o' @. r3 a. e1 W! h
return getActivity();
" N, V5 d" V2 Y! P/ h# ]: S }
0 P# p* }# c8 A& K3 }. u& H z
5 B* l2 i4 h4 q public static void main(String[] args) {& b) I9 |+ [6 M) h1 p' G0 z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, | A. l, e) ?2 c1 R. X* r; @) e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 N1 u- l# D( v swarms.buildObjects();) Y& ^9 M( P; \0 G& {4 S
swarms.buildActions();. `- C" D+ ~0 Y" j2 z- @3 A# x
swarms.activateIn(null).run();
) J2 w! \7 I9 E; q* e `* [ }
& I4 x( z- f& u* c6 ?, d* v# w$ I- v x+ x3 L7 J8 M
} |
|