|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! W r( @8 Y6 A8 }' ^
, f: f% m8 J4 H* P. m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) r$ ?5 F# U& e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) W7 s- \# q" w/ V5 y7 J
swarm.SignatureNotFoundException
7 X6 P2 r+ J+ v5 g at swarm.Selector.<init>(Selector.java:76)
: N4 }/ r1 G; s2 R at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: G8 p7 {. }8 |; W$ G' o at ActionGroupDemo.main(ActionGroupDemo.java:67)% V/ u+ f& N( o) {1 l; S0 f
9 t- L- z! S. K" w) L$ ~
/ N6 |9 Q# P% `3 ^2 @# Bimport swarm.objectbase.SwarmImpl;. f! n: r6 M+ V8 i& X; L
import swarm.objectbase.Swarm;1 \" b7 W4 E4 c( c6 G5 d/ G6 c; Q
import swarm.activity.ScheduleImpl;
9 ]! T8 n& G. F5 a+ C* b' ]import swarm.activity.Activity;
3 ]9 H+ l; L2 y# [import swarm.activity.ActionGroupImpl;
5 l9 g" j; b( m; i* a+ [( e/ Yimport swarm.collections.ListImpl;) l, l1 E# T& L G0 N
import swarm.defobj.Zone;
# O2 m/ ?5 w3 rimport swarm.Globals;7 J& m: }4 J6 M/ M
import swarm.Selector;8 x3 q; k2 |! Z6 Z9 ]3 y! x
import swarm.activity.ActionGroup; / M8 S5 z* P' U }8 Y2 z( o
class Agent {, d7 Y4 t* P5 w) P: P3 I$ n1 s
char id;1 N; E, k# J( h8 B3 r, ] `
' |2 ?+ n- n0 S8 v7 I Agent(char id) {
- H) J& E3 i% C3 T7 ]# m; n this.id = id;
# x G, X3 l2 ^. G, \- h5 J+ g }* w3 U3 I# I [ n0 f; f% F
1 b) ]& |/ P+ K
public void agentStep() {' u# d: R7 q g
System.out.println(id + ":" + Globals.env.getCurrentTime());5 x3 d+ J8 d# \7 Y J
}
4 ~5 J4 c% S# e8 _4 D+ L}
( ]8 c+ J/ n: x3 O9 Z* g i: @4 g1 l5 G& o. z0 i2 o& S% t, d3 c; G
public class ActionGroupDemo extends SwarmImpl {# w! `& p; c: R3 j$ v, ]% _
ScheduleImpl schedule;
9 V0 R1 t7 O% z+ t. ? ActionGroupImpl actionGroup;% Z- J ^3 [% }& \" H. X' p
ListImpl list;" `8 y/ j, v! B) m
char Id = 'a';
, ?' V! `1 I7 `5 b# s2 o5 J
0 Y. K0 ]9 U( L _; s' B S1 t ActionGroupDemo(Zone aZone) {2 z: h/ S8 b. M+ C3 h: r
super(aZone);
3 I* u v- G, B6 N' T/ D! v& c list = new ListImpl(aZone);
$ l- b- c0 y! k8 @ swarmSetp();
3 V* i- s d1 U. L/ b; Q! F actionGroup = new ActionGroupImpl(aZone);
0 S$ n5 e& m7 g3 S8 J schedule = new ScheduleImpl(aZone);
! a6 t/ E7 z* R5 F% G* ?6 ] try {7 ~' K* _2 Q) d- _+ }! V2 Y. `) V
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 Z# v8 W$ |$ u v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' @4 h& A% s, M- B. G
* u# O# V) I) u. L3 l# o& }( F- _ actionGroup.createActionForEach$message(list, agentSel);
' W+ a3 L: f- w# V3 T- A actionGroup.createActionTo$message(this, swarmSel);! R0 }9 y( C- w) }. p! u
schedule.at$createAction(0, actionGroup);
$ L1 T6 t% M4 @9 T8 [ schedule.at$createAction(1, actionGroup);7 b* t7 g. ?6 y2 `. W4 s
schedule.at$createAction(2, actionGroup);. S! C/ K4 U7 m7 R+ @4 s% s
# V) X" r1 J |3 n } catch (Exception e) {* H* ^0 R2 B. |( _* J. m* X
e.printStackTrace(System.err);8 }7 Q _1 P) ~! k7 s
//System.out.println(e);0 r3 f: E% H+ F. U, b1 _
System.exit(1);
/ ?" Y# P$ k/ C- |) B8 ? }
; X9 e) v+ x, v+ y6 i; `; R* t Q5 z* @- v" [) a# l
. T/ {1 E2 U5 v$ N
}% L4 S% ^3 K5 Y% V: m/ E
; D1 D9 Q2 m; p$ p private void swarmSetp() {
. K6 l/ `( B' u0 }; H! v list.addLast(new Agent(Id));: x5 m t/ n3 d4 [
Id++;" j. z6 i/ v& j% C' [5 J/ Q, r: W
}
4 @& z9 X% H* S6 z* R2 i ^. k/ [
, O4 Z& g! u$ ]8 |5 A4 E% V public Activity activateIn(Swarm context) {
' i9 }5 A! Z8 X' a5 d. Y0 w% g super.activateIn(context);
+ F1 p+ c' g- K1 g' `& h2 ` schedule.activateIn(this);
0 O9 N4 P3 q/ m8 k# p. D return getActivity();2 U; P! Q% ]' S+ R y* D
}0 F; y* F; T% G6 N& B8 T" k% h9 H
) e0 C3 Z' l4 b! k- q public static void main(String[] args) {! m/ T, D6 t0 \6 X4 g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 W$ w' Z- E* @) O2 D2 p- D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 T0 K3 n4 b/ y( q5 ]% K
swarms.buildObjects();
# O' _ }+ Q% O7 }( s swarms.buildActions();' }9 _9 M' |+ ?6 Z
swarms.activateIn(null).run();
H& i0 \7 g* G' b2 M }. p4 l6 P# v4 P; B) r* E
2 |' B0 j& H% r2 Z; \2 g) G4 {$ Z
} |
|