|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ~/ [& K0 C7 d t# H0 v8 Q1 i( A) \$ P. W1 K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- n" V; B% y3 v2 n% h M' y% u: J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. S$ K h% Y0 c, S @9 vswarm.SignatureNotFoundException
& |, f+ X/ B! S; S q at swarm.Selector.<init>(Selector.java:76)
p( ?* l/ s3 A: g1 ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37). E5 P1 [5 s3 E8 r9 J
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ W1 z# X$ _! K8 {
u6 m9 k2 t% i& u$ K0 s) v( \2 S& b! E) U1 Z
import swarm.objectbase.SwarmImpl;/ F/ c, J; l. [8 K/ U' W1 x
import swarm.objectbase.Swarm;
- @% V( {9 l1 `. |; D, O3 w [. ]! f1 Limport swarm.activity.ScheduleImpl;/ x! T* E% q/ w4 B9 Y: I" h( @
import swarm.activity.Activity;) w6 \/ ?3 \' z' G
import swarm.activity.ActionGroupImpl;
; i/ d: m8 ^7 f5 {import swarm.collections.ListImpl;
* ~0 g6 Y v& @) `9 U; fimport swarm.defobj.Zone;
% a1 @7 {6 X+ [3 o$ v& u. Gimport swarm.Globals;) h. L+ l3 l2 _% }8 Y
import swarm.Selector;9 k* K# E" o" n) R8 _
import swarm.activity.ActionGroup; ; s7 P v3 W7 }' M; e4 ]. ?( G; }
class Agent {
! z& v% y; J. [2 t% G1 b8 z% a; O char id;! D# V. Y' v( l a
* x; h+ M. }) G. q. k
Agent(char id) {, l, n6 C- Q5 |# A4 |
this.id = id;0 t9 d ~+ Q+ P& h* F
}. [; ]4 ~ D; b4 I ]: ^8 u2 k
& n0 |4 u/ m, Z7 o public void agentStep() {! v5 b# L9 Q( L8 l$ R: F" b
System.out.println(id + ":" + Globals.env.getCurrentTime());
& D3 g2 M' w* _ }$ b2 C1 I8 q5 i9 d! }
}0 V3 R6 W6 i+ s0 F: }8 h# r
9 y4 ?0 J5 {1 j4 \: o5 x$ w/ Dpublic class ActionGroupDemo extends SwarmImpl {/ A* f2 n! h# O/ @2 U
ScheduleImpl schedule;
2 A7 t& Y4 ^& t1 w ActionGroupImpl actionGroup;
8 ^2 \5 o: @+ t- _8 d9 J ListImpl list;3 T$ \; ^5 X8 P% r8 c3 W, U8 G
char Id = 'a';
7 d5 t5 W. q7 u, e6 ]+ I) e. S$ }; i! W9 ^$ p
ActionGroupDemo(Zone aZone) {# D5 L6 J6 {- r9 L8 V) ~! H4 O% o
super(aZone);
% y( V6 ?9 H, X+ U' w3 E } N list = new ListImpl(aZone);7 v N( @5 T5 w! I
swarmSetp();
: D8 e8 h( ~3 t; j0 J, t actionGroup = new ActionGroupImpl(aZone);
" V9 z0 O& T* z; p0 w schedule = new ScheduleImpl(aZone);6 K" g! M; G8 N
try {
6 {/ ^1 v5 ]( v! c Selector agentSel = new Selector(Agent.class, "agentStep", false);6 o \1 e) n' H2 m+ y' I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 I' g! G2 p) t# p
* X8 V5 V8 H* ^8 H$ |/ S
actionGroup.createActionForEach$message(list, agentSel);6 B* H0 G& N4 |1 K
actionGroup.createActionTo$message(this, swarmSel);' [9 j G5 P0 m
schedule.at$createAction(0, actionGroup);& a0 i( o3 M0 h0 H- N5 B
schedule.at$createAction(1, actionGroup);
; |5 m8 p. g' m. s6 B! I7 j schedule.at$createAction(2, actionGroup);
3 N0 ?5 s7 B5 [1 r4 B- n
: |+ i- d! H W5 S } catch (Exception e) {
* j: o( z z& Y e.printStackTrace(System.err);, {) ?( `& S; _) O
//System.out.println(e);/ W- Z. z9 s3 y7 H" `8 m O, Y
System.exit(1);* G- s7 c7 I/ C0 f, ]
}, g4 B. q7 U, q$ c( f( }$ J
8 I/ c2 ~- ]& O0 `$ [% E% W. a
. L3 y1 z# A; H* _ }3 e. C3 K8 E' w4 b5 f
9 f4 X5 J3 o/ w& `
private void swarmSetp() {
% o% K# X0 K! k+ c) V) U4 _4 x8 v list.addLast(new Agent(Id));
' g! X/ S* L0 w- }6 M' a: r" P. U1 F Id++;4 E+ {" Y' C4 _, x
}
9 W+ {+ N! _ @" U; @/ E7 k
z# m6 Q; X4 T. u5 D5 W public Activity activateIn(Swarm context) {
' ]# P9 ?; y C6 K, a7 c( Q super.activateIn(context);0 N, @9 F/ B) s9 K3 P+ v+ @1 t
schedule.activateIn(this);- M+ x& K, t- m/ l$ x; ~$ ]9 V
return getActivity();. p& }) b$ `' E0 g
}
3 v! c J- _- ?$ x
% v, x. Z( ]3 y) ? public static void main(String[] args) {
. G' [" x4 E" m; l# _1 f8 y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, a; C% t2 D" I7 X
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* z$ u4 H) e Y9 H1 V swarms.buildObjects();
$ r4 o# D8 N2 R swarms.buildActions();
9 Y j) ^) L7 o' U9 N( t swarms.activateIn(null).run();- B$ Q9 ^* B2 \9 {# o1 ~
}
: ^9 i% t1 \. a w% x
" w8 ^0 |+ f l: ^* [} |
|