|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , ?$ j0 }0 ~6 K; p2 r. T
% P( g, G0 x9 S Y) x4 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) A" d5 |8 b/ L, `& y2 c+ `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# T* u; `. O0 o& {swarm.SignatureNotFoundException2 x! r# W/ |& X9 f# }# S
at swarm.Selector.<init>(Selector.java:76)
& w3 X! y1 E9 T2 a, `# q0 R. U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% v+ S% [' `- V6 H at ActionGroupDemo.main(ActionGroupDemo.java:67) C/ f- O: P( U* J) R$ t
4 }8 n5 s3 D( F' l+ K
8 a$ A: x: T4 [+ w/ k/ Vimport swarm.objectbase.SwarmImpl;
y ~4 o3 d& P, _+ i& Jimport swarm.objectbase.Swarm;
# K( h/ \8 }( T# J- P: s- Uimport swarm.activity.ScheduleImpl;7 K/ k+ j! S; U5 k0 D5 E; {
import swarm.activity.Activity;
3 l# _( h* N. ?" n% Simport swarm.activity.ActionGroupImpl;
. X2 S9 b& f- K r7 K! Aimport swarm.collections.ListImpl;
- h. ~- L2 A+ X" D4 U0 ?# c7 Fimport swarm.defobj.Zone;
% N% f: `: |; | Himport swarm.Globals;3 {/ w3 p( m) _1 u! A
import swarm.Selector;4 w+ V2 x/ s6 }) ~# z1 R4 K
import swarm.activity.ActionGroup;
- h' D5 b% R6 p3 [class Agent {
7 T7 c7 ^. y* k: U char id;
6 ?! t5 \3 k* J. W% q, ?! Z" q2 f; y" J0 M! c& f- L& ?
Agent(char id) {8 g* O8 ~+ {4 G1 ?- ~# b; X$ z
this.id = id;; R( K, J) V" L2 R* u& i( ]6 j# l% D
}
# u; M& y* h9 q* Y% O* I( H
' y, y( ]; q* Q4 e6 t public void agentStep() { B7 L' q- e4 ]% p$ Z& C
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ _4 V5 X8 d3 b" g }
* b# g, G6 j9 E$ }( \8 h! S* m7 [' H}: N3 T' I2 `0 Q, i2 P9 x5 {1 A
! u& _6 H' g4 M) _public class ActionGroupDemo extends SwarmImpl {2 e/ A f0 c+ {, v1 \
ScheduleImpl schedule; ?/ [+ K. z# t
ActionGroupImpl actionGroup;
! h3 e# E' X' O4 T: R" Q) \ ListImpl list;
: Z2 `7 J; |9 q; X1 U9 y& ^5 Y3 j, Y* C char Id = 'a';4 a; a6 v7 W3 G: `6 M; w
5 A$ T- b P0 ?2 U3 N9 F% m& g
ActionGroupDemo(Zone aZone) {
# C; ? o$ R4 v8 j3 \( f) y super(aZone);
; Z- L# S" r; b8 g! D/ g& _ list = new ListImpl(aZone);7 {/ j0 v1 \7 w6 b) y% u" Y
swarmSetp();
( w, h8 y6 o3 u- | actionGroup = new ActionGroupImpl(aZone);
& C0 y7 e" w5 G schedule = new ScheduleImpl(aZone);
) f1 j5 t- e# s$ [4 Z' x% a try {; ]& a0 E% J5 z0 J: E+ [
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. R8 ~5 a, x% K1 l+ p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 _# i. E" h3 q3 g4 x 6 `0 E) L1 g* w( X
actionGroup.createActionForEach$message(list, agentSel);
( f8 u d( m( b* }. m$ O( \ actionGroup.createActionTo$message(this, swarmSel);
3 l/ k% I- x9 p3 r; S2 Y' g: J schedule.at$createAction(0, actionGroup);
" s$ n* ?; }$ W schedule.at$createAction(1, actionGroup);
0 B: u4 F' N( [! z2 _9 D schedule.at$createAction(2, actionGroup);9 h* X) @' p' f, Y M5 i
5 y- `/ C5 C- [" C5 G j } catch (Exception e) {
, l5 m5 y% U. R9 M3 X e.printStackTrace(System.err);
4 b0 Q2 K; j) D3 k0 }( x8 V0 l y //System.out.println(e);! y9 c; J4 s( J+ J% V* @+ T. R
System.exit(1);
/ x+ W* a/ Q+ a' h* W }7 g& p7 G. |+ V
# `( x( m7 y. l& s$ G: f4 E' A( _8 B" G
}
& Z* D6 _' D8 R T5 k. \0 {; u6 Z) h. Z; d" m
private void swarmSetp() {
6 M* g9 b) P2 A/ u% h list.addLast(new Agent(Id));
3 J1 y3 Y( u5 `. V: p Id++;; U7 F6 Y5 Z' }8 G3 d% n; j
}7 D" s4 W$ J9 H7 a- k, @! B7 v
# @2 ^1 n( A$ N+ I$ J i
public Activity activateIn(Swarm context) {1 n2 d( [7 ]- d
super.activateIn(context);+ Y9 r) C0 b* Y+ [1 R$ e$ b. S
schedule.activateIn(this);5 T$ m C2 m0 e
return getActivity();: p Q" y9 W: i1 k- R- g
}$ c7 D" j$ a# g' p k. x1 `+ l
I' O. j S. L- u- d. ~ public static void main(String[] args) {
! } W+ |9 P# Q$ b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' S5 p. |! u0 {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 B/ x& l1 y e' b1 r2 V7 Q4 G swarms.buildObjects();; v# c& T/ G5 _$ P& l* U
swarms.buildActions();
- u- }; l6 S; O7 |+ A2 g# ? swarms.activateIn(null).run();6 O$ A; a% K$ m# Y i. Z0 J0 w
}6 W5 S! ]- B- r9 J
4 J4 J7 W5 T) c4 n/ }' W} |
|