|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 e' z# G" k8 x/ g! W6 g' b$ m
- H! s* s v- @' A( q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 S8 s8 j/ l* ^6 g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 F# y) w8 H& e9 |& d1 Y2 M8 g1 wswarm.SignatureNotFoundException
8 s% [; q! U( g+ R2 P8 h at swarm.Selector.<init>(Selector.java:76)" c; Q8 R3 N+ k1 e" U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ C t% ]9 ^! H4 N at ActionGroupDemo.main(ActionGroupDemo.java:67)
( `6 E& C3 K" w% P
/ t! c- o" y* y! u1 t0 P+ w5 _7 S, v: W `5 W
import swarm.objectbase.SwarmImpl;8 S& T! k/ a- p5 n1 R; T6 ]
import swarm.objectbase.Swarm;( P& Q* H# M9 D
import swarm.activity.ScheduleImpl;% q+ O7 |9 h) A8 r, t3 M7 j% [: e( i
import swarm.activity.Activity;
0 Z5 u3 |3 l) i: H9 X0 t0 ]import swarm.activity.ActionGroupImpl;
1 s8 Z. x% H! o5 _. g7 Iimport swarm.collections.ListImpl;2 M- Y5 a2 X6 }+ P8 }( d& j
import swarm.defobj.Zone;
; C2 l8 \3 D- _) P9 l5 pimport swarm.Globals;
9 _( @2 `, M( L! o! Zimport swarm.Selector;, I' U. p& V, A: v. m$ f; X
import swarm.activity.ActionGroup; 0 c" ?5 A8 o$ f
class Agent {
2 d7 F9 G' i( ~ char id;( Z" w7 f$ w2 E+ f
. L) ]8 A [/ r3 }1 }
Agent(char id) {) S/ s+ s- p7 A4 _% w$ P6 e
this.id = id;. v6 y% X0 p( f6 W: q
}( L$ L! f; ?. r8 x+ U6 w
6 w% R+ X9 e* u; l2 X
public void agentStep() {
- n8 Z0 @& U; _0 b1 \' _( ]+ E' f: \ System.out.println(id + ":" + Globals.env.getCurrentTime());
1 g" v8 h* i$ v3 Q; n# r% ^ }
% W8 R' S: b: @6 q/ }2 m: ~}# ` ~0 v7 Q+ g) a* p
, b1 h1 g) c6 {9 }/ S9 U- [
public class ActionGroupDemo extends SwarmImpl {4 D1 h& @% F6 x/ x- s7 @
ScheduleImpl schedule;
E9 e- x4 e( g. D( W' K3 a ActionGroupImpl actionGroup;
+ \: ]8 W" ^6 O4 i ListImpl list;& p$ q4 }9 ]- U0 I+ I Y
char Id = 'a';
/ l; x' ^; ^' S( v9 V
I' n) [+ s" v3 U: o8 }+ G ActionGroupDemo(Zone aZone) {
3 F/ H; G& I1 A. p5 Y super(aZone);
0 J3 w% U8 M+ W! w: H! r list = new ListImpl(aZone);
; X5 L4 W" C( }0 ]- M# G swarmSetp();
: j! c( W2 U/ \ I) N1 \ actionGroup = new ActionGroupImpl(aZone);$ h# q ~' L8 `# k8 }/ }- V% f5 W. X
schedule = new ScheduleImpl(aZone);
$ C( u- ^" ^4 B6 s. O" h try {; _4 v( X/ P0 Q' z% N- L* P t
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ ?2 G- `. J v! @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! M0 F! q& s6 f9 r
: @9 n5 p7 d$ X" e9 Y actionGroup.createActionForEach$message(list, agentSel);
9 P- ]: T \5 l5 H. Y2 V actionGroup.createActionTo$message(this, swarmSel);7 B' C* F* c, i1 a Y5 {
schedule.at$createAction(0, actionGroup);/ R( | b0 }2 l1 a
schedule.at$createAction(1, actionGroup);. j: h: P$ B. `4 u3 C% N& [
schedule.at$createAction(2, actionGroup);* S, m2 S0 Y: V
2 T# c1 E- a- a' k$ r' x* P
} catch (Exception e) {; A8 C( K: x6 {0 d
e.printStackTrace(System.err);4 T% N" u1 E9 G ]0 G
//System.out.println(e);$ Q# m' T" s' I J' x: a
System.exit(1);! K/ M2 d8 J1 O$ C; S5 W& E
}8 c3 L/ [* P( Q+ F/ ^3 B2 m2 q
/ a: k; j( @) W8 j- T
. z1 o- ]$ b/ n }
4 Z& _" N$ ~5 B/ X+ q9 [
+ M5 o4 v, Z8 L% `# ] private void swarmSetp() {1 b; Y+ v& Q6 H- d" X* t
list.addLast(new Agent(Id));3 i9 W/ y) _9 ^' C \! E: p7 ]0 F
Id++;( q3 G3 F& t; u7 _/ V$ x; X- s
}
$ s! U. ^; A5 p3 m# R* \+ P4 p& g1 U/ ~8 A6 D( m# A, g' k
public Activity activateIn(Swarm context) {
. z% g7 j" e! h& V2 S2 |: l( y super.activateIn(context);
3 m) R7 o5 v: W Z1 `% h% x' P) p schedule.activateIn(this);- S) N* g4 l7 Y) k( r/ O
return getActivity();
0 L/ |! t& B# V: _0 m; p+ C8 v }1 m" N- K: u3 H ~5 K4 v
! J5 i! \. u( ~9 {% d public static void main(String[] args) {
; E& l1 Z4 w0 a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 V8 c, n4 B! z+ ?, Y8 ?8 q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 h, e3 y, k9 E+ N% m" _% d2 R
swarms.buildObjects();* u" G9 D8 Y+ C! k9 I2 z
swarms.buildActions();) g$ H) W2 H3 w) f( r* F3 ^3 u. D
swarms.activateIn(null).run();2 m8 l/ p$ f/ N, N5 W
}
$ P" n4 `' C% b+ o% D& q& y% |
- J; F% |# h Z3 c3 \: U* |} |
|