|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) \: V0 _5 J' r& }9 h4 P( g
! P. B- `. n! F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* F9 p6 f" X# F* ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# n1 w3 s1 p+ D$ s* Qswarm.SignatureNotFoundException
) V0 X# p2 z" X7 e/ |! I. M. W+ D at swarm.Selector.<init>(Selector.java:76)
. y$ P# ~- q3 a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) K1 W8 l# Y* h7 S, z at ActionGroupDemo.main(ActionGroupDemo.java:67)
- w/ G1 V. G1 s+ z5 n' k' T7 Y5 @8 x3 i* |" O
$ L3 {, u% {$ limport swarm.objectbase.SwarmImpl;
+ t$ n7 S1 M G: Pimport swarm.objectbase.Swarm;
$ }8 g4 J) z6 f+ l8 t& s# J! N* F; Simport swarm.activity.ScheduleImpl;. }' Q& [1 R* [0 Q% |) L! @
import swarm.activity.Activity;
; C3 {0 n" a E& B" h9 m7 Zimport swarm.activity.ActionGroupImpl;( q2 G( B& [$ E! T
import swarm.collections.ListImpl;, N: Z* O5 m" `7 y/ o2 }" b5 M
import swarm.defobj.Zone;
/ x) B) A) |3 u5 z% A7 m. q6 Iimport swarm.Globals;+ B8 u5 c* @' ^3 p) y" n- m
import swarm.Selector;
! S8 _6 Z& g0 f9 ]8 K) |+ e$ nimport swarm.activity.ActionGroup;
* `; Q; k) @" W2 ?0 Xclass Agent {
8 e5 e6 ?! P' W. f$ g& M# j char id;% u8 N8 S) }* r$ C$ Z5 L& Y
% g# G% y o5 } Agent(char id) {0 H+ W$ I6 l$ D) W* F
this.id = id;+ w) H0 u6 C& l2 h% G$ V
}
( n2 d# O" A/ [1 x
8 t/ W4 f7 y+ r. W, B public void agentStep() {; x( t) ^5 p3 `
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 r- J6 ^0 u! v* B+ a: m# S0 H }5 U( D( z# m E. a7 T
}6 S! b" {; [6 W
2 M. ^6 K6 W* K9 n2 {
public class ActionGroupDemo extends SwarmImpl {
2 Z3 W# Q: q& P- ?* o3 x; w4 U ScheduleImpl schedule;
6 }5 y5 ^. l y0 K( s ActionGroupImpl actionGroup;
8 c' @; ]5 A& W. Q, T! I2 S ListImpl list;
( k/ b6 `4 ]2 ~! l% G5 E8 Z4 p( M char Id = 'a';
$ G& N. @ g/ B& J- i! v: w& G4 n) T8 w# R' W
ActionGroupDemo(Zone aZone) {
+ ?% {9 Q$ ?: r: Q* W) q super(aZone);
7 L. B- T; P7 ^# j list = new ListImpl(aZone);
. ]/ g- ?: G. F/ O8 M/ N5 p2 j/ e swarmSetp();+ d7 U/ \6 [: W: k2 @5 |/ L% j& U; m
actionGroup = new ActionGroupImpl(aZone);
2 J6 }* v" L# R' ]) j$ t schedule = new ScheduleImpl(aZone);1 l3 L* e; K5 X& l( _8 C: `; o `; S
try {
0 G, P" I6 |: S, R/ o+ K Selector agentSel = new Selector(Agent.class, "agentStep", false);8 `5 R d% `- }( {5 E4 B( ^; q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ M* |+ | N9 B1 M* |- c
, u( @* }+ D7 J$ o* D actionGroup.createActionForEach$message(list, agentSel);
; y, l, L, g" y; y! Y actionGroup.createActionTo$message(this, swarmSel);; N; [) \ Z" [" w: L8 r/ @4 {
schedule.at$createAction(0, actionGroup);
7 @5 g+ W! e4 P, q; A3 m schedule.at$createAction(1, actionGroup);+ `- N+ L( ^8 Z3 }9 n, o
schedule.at$createAction(2, actionGroup);
: [& b5 N+ J% k3 v+ p5 x
9 r2 X2 J+ k) }5 ~ l" t, A } catch (Exception e) {) h* @# j% J. M+ k& }5 p% E5 x
e.printStackTrace(System.err);
( E# O2 N, @2 T& v3 F7 _ //System.out.println(e);. t8 _$ t/ W% X. w/ X- _
System.exit(1);9 r- }* ?; i$ N2 ^8 P
}. I/ \/ \9 F |& L9 k R* s
0 i( P& |( Y" c" v: d
$ O- B0 }' g8 _
}6 e# {& s/ _* g- O# U
3 h* O4 `( ^% n$ f* b
private void swarmSetp() {
' E1 G3 ~, V. D* e list.addLast(new Agent(Id));
& J: @8 A1 A% S( r3 ]8 Y/ M Id++;1 N% p# C3 F; Y
}! |6 I ]2 Y4 W
9 Y* z! J9 i9 j' b, X% ~. G public Activity activateIn(Swarm context) {: K/ h" V; q1 w' c# l
super.activateIn(context);
7 _; g: Y5 R* f$ B+ L- R schedule.activateIn(this);9 c+ O9 F+ Z( a7 I- q1 i
return getActivity();
( r7 v0 j) l$ R }
0 K. x# }5 R! D" q3 B% J6 E. K _* m6 g2 b& @7 C7 T
public static void main(String[] args) {
1 F" Z7 U& z6 P2 ~- R" i9 Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* U9 @5 C% G( s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ T" K `( ~( {# ?6 m5 w: k
swarms.buildObjects();
% [" ]/ k+ x$ E" V6 {; \7 p5 _ swarms.buildActions();
8 i& }: d6 [0 `4 S& W5 J swarms.activateIn(null).run();2 K( X# }7 C ~6 I
}& }( J) D' t4 L( U5 \0 [) l
. L* i% n7 i; H( ~' ]
} |
|