|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 h. q) H. M, y. y
' [2 _' }3 t9 B9 p4 s: d( d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" u/ {, {3 ?, I3 Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( D6 C* Y$ W9 ]# j3 l% P, C
swarm.SignatureNotFoundException; R4 y: o0 E4 x- i- B
at swarm.Selector.<init>(Selector.java:76); e, I: E) j8 [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 v/ f3 N: j9 \$ @) s v/ [: L; ]2 n at ActionGroupDemo.main(ActionGroupDemo.java:67)
~/ E( \8 F4 K! B/ N4 ^" n$ B3 V! }, ?' i
3 B$ j+ O( _! x
import swarm.objectbase.SwarmImpl;" ^5 \3 n' M! a+ F3 G( G) u' k
import swarm.objectbase.Swarm;) d+ Z6 P9 M8 G# y( g
import swarm.activity.ScheduleImpl;
( X4 P# K4 F; w) i; d6 ~import swarm.activity.Activity;4 b j3 {2 j4 k$ s; S# p) q
import swarm.activity.ActionGroupImpl;
5 a- W- @7 U; l: l/ D+ P& f& X* A5 Cimport swarm.collections.ListImpl;* S- z+ V6 U! V4 d
import swarm.defobj.Zone; # V6 n3 U. O* B- l+ k
import swarm.Globals;$ A9 ^! h" e8 |: ^6 F5 {3 j/ k/ E! a
import swarm.Selector;9 A! y I* L5 c* J' L
import swarm.activity.ActionGroup;
: d9 R9 _5 C, Y% P: lclass Agent {# `, F; }! L+ V5 e! t4 A- v
char id;
3 B; t+ m3 N' \" n$ U- S( h7 D+ G. X0 g7 U( P- R( J* e
Agent(char id) {" O! X6 ~0 J2 ?/ J1 O0 T
this.id = id;; h* J) ^: ]/ r; u% [* r
}
2 W) y* K6 E. c; C/ N9 J) ?6 p" y" b9 j
public void agentStep() {
( l: e2 S% f" K; |. A$ b& p System.out.println(id + ":" + Globals.env.getCurrentTime());# C Q/ m5 Q7 N: j5 {) `
}
9 `; l# K" W; F# _: N- @}3 w' t* X( O+ \. r
2 x2 z9 M0 Y2 e: j
public class ActionGroupDemo extends SwarmImpl {
: M3 s K0 a9 e ScheduleImpl schedule;
/ I. E. c2 l* W; b3 v' n: j ActionGroupImpl actionGroup;
. q1 {3 M" P1 r: f9 }+ n; [0 Y ListImpl list;6 O( \* |; h# F% Q$ H
char Id = 'a';
4 u" t2 i& m- l. {- l+ N
' N% o, A7 M( c! n @ ActionGroupDemo(Zone aZone) {- x9 j5 B& M0 V
super(aZone);) x- @8 o$ t- |/ A3 W- k7 F5 q
list = new ListImpl(aZone);3 Y; G0 i [5 D) v* ^2 R: j5 Z+ M
swarmSetp();" ]" J% _* p- C; ?; u" L9 `
actionGroup = new ActionGroupImpl(aZone);- x8 c* T5 J+ Y* Q# J
schedule = new ScheduleImpl(aZone);
" O( G& B3 }0 ~1 h% A try {, X6 H1 F0 d' F4 X/ p6 P
Selector agentSel = new Selector(Agent.class, "agentStep", false);( u- W1 p3 i( v6 p; e) n; r8 l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, ], G* g9 n- A# N4 I; h & g7 B _3 O$ V: T/ K
actionGroup.createActionForEach$message(list, agentSel);2 S% ^- e; v5 c# N
actionGroup.createActionTo$message(this, swarmSel);
0 L/ t0 T3 ~2 E schedule.at$createAction(0, actionGroup);+ t# W' }# B( _) L, N, }
schedule.at$createAction(1, actionGroup);
2 k+ d0 o8 v) x% ] schedule.at$createAction(2, actionGroup);3 S- j' y, k) r% K1 K1 h
( g5 y- v4 O% t; r } catch (Exception e) {% A1 X( W* t9 I/ R+ H6 K( g8 L
e.printStackTrace(System.err);
8 y* M0 j' z. _" y; C //System.out.println(e);
4 @3 T) V& q" O: M& t T System.exit(1);6 c6 [0 d+ h" Q' ^* d S
}
1 Y+ k5 l$ ]9 O+ }2 B9 i& t5 w: G* S( A& @& n) B
) U; Z( {! y7 {$ L4 X/ F/ i2 G
}$ h, N5 A& R: ~+ [4 m
6 z! Q4 j- S8 G' Z* C1 c1 _; m: S private void swarmSetp() {
0 a; a2 k$ o: o1 a+ L! X7 p list.addLast(new Agent(Id));* R z$ t3 B8 ^' K: X" Z
Id++;
, {. ~* Y7 B* _& K* h }
. y% b- V) R6 k( B1 t
! q- Z& @. R# E o2 ?6 u0 `) d! P public Activity activateIn(Swarm context) {
( ~# _) {, K' j super.activateIn(context);4 v2 |; h- C1 h- ^7 d- B8 N
schedule.activateIn(this);% O8 u( E5 ~" h9 {% Z
return getActivity();
b8 D6 }1 d! e J$ K! G# O- M }
h& K3 y; G6 {0 _# k, o. V' J; o) }+ |2 S% @2 ^
public static void main(String[] args) {3 Y0 n/ A/ h i: {& g0 x2 J- @% z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ C5 a$ ? n: r5 |* _2 }- D" G( w- S; L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; S1 ?- J" {# `5 {+ f, L
swarms.buildObjects();
$ l8 j/ }) t I swarms.buildActions();
- `. N& ?" c# X; B: t* s" l' c* e swarms.activateIn(null).run();
2 B8 ]* b& @' Y- P% q! |7 [ }- S: b6 V; T" d) `/ Y. V! Q8 `
+ t: B9 b* I- y! J0 {" s
} |
|