|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
?! I% G0 \) X/ x+ y4 V* `. c1 m" Y% M# E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ f5 S* m; ]. V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 y5 h( K2 u: X* u. y4 Q/ H* y3 @swarm.SignatureNotFoundException8 K7 C7 j1 v0 A( A+ D/ A" G' ?
at swarm.Selector.<init>(Selector.java:76)+ w. u0 b9 y ?) O) s6 b/ T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- Y5 `. ^8 D$ R* E7 m. X* m
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# K3 _" Z( g6 T! U8 d5 ^ Y2 }
0 d* H# `' `3 L; V. [1 y, }3 Z7 Q* Q7 ~1 A
import swarm.objectbase.SwarmImpl;2 i6 e$ S; g8 }, ~ `, I
import swarm.objectbase.Swarm;; z2 E& h0 r; l* c% m2 R* [* A' B
import swarm.activity.ScheduleImpl;: J3 y- S9 B" H' `. u& y) F+ b
import swarm.activity.Activity;% K9 R- F0 o3 a6 M
import swarm.activity.ActionGroupImpl;
) U) y# Y+ t/ \3 p5 b- Bimport swarm.collections.ListImpl;, ^* l( ^' b0 n* P; ]" N
import swarm.defobj.Zone; - j# w( a2 B( C% k
import swarm.Globals;% \( a5 n) W0 W( P- V! l3 k$ m
import swarm.Selector;
' B+ v# a2 K* Mimport swarm.activity.ActionGroup; 6 Q# v+ p F$ w9 }
class Agent {; K9 e2 Z$ S) `6 t8 l. {8 B; _
char id;
: A1 {8 t( D4 h, G
0 V% s# O% a% x: l+ c, c% I$ B Agent(char id) {+ B9 X4 ?2 r/ u# P1 K
this.id = id;7 _0 N7 T4 D$ f* K3 }
}
5 a/ A; S( o7 d( y* H0 Q" [
* _1 V" u2 }/ }' j public void agentStep() {# Z1 T o3 p$ r) t
System.out.println(id + ":" + Globals.env.getCurrentTime());
) ^4 Y3 E( D* I" T* C" T }
) u3 @) g9 `9 B' U* Z8 j6 \. \4 L}1 D- |/ U# |) B2 P! s* ~# o
$ b' }4 C" @4 \6 j5 ^5 ?( e7 M
public class ActionGroupDemo extends SwarmImpl {
/ r% v B z& [( ^ ScheduleImpl schedule;
. L4 G3 z6 j B ActionGroupImpl actionGroup;
# W" a0 c: {& g4 X% v* B ListImpl list;
: R: s& ?- b% L/ K2 i char Id = 'a';
7 L( x8 t0 t; S! m9 n7 B ]& v0 y8 r1 I
ActionGroupDemo(Zone aZone) {$ o/ C* L1 w8 r9 J
super(aZone);
7 r3 @, @" A$ S' v2 ` list = new ListImpl(aZone);+ |4 s! U4 a2 a* A/ y4 d
swarmSetp();/ ^, p1 O# K3 h
actionGroup = new ActionGroupImpl(aZone);. i- z! }) O- E, l+ h! }5 A# q4 g
schedule = new ScheduleImpl(aZone);- q5 S6 J5 o) P
try {* u+ u, d, P# ~; y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 p2 ?. H2 [1 l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 D: Z3 Q% j# r4 z' w
$ Y) E5 z- z0 ]" A& A actionGroup.createActionForEach$message(list, agentSel);
' v+ c4 S }- c2 S+ N: l! e9 i" ~ actionGroup.createActionTo$message(this, swarmSel);
# d8 y' [4 Q# \- u schedule.at$createAction(0, actionGroup);1 X2 S% i" k2 V& A& n1 C- I
schedule.at$createAction(1, actionGroup);
: T- T2 E; c: R6 X schedule.at$createAction(2, actionGroup);2 c* {* [2 h; Z, y1 d
5 f1 V/ i5 G. c( r, m$ z4 C* c } catch (Exception e) {
9 W" X8 J8 m, @" z0 u* y: C e.printStackTrace(System.err);1 ~6 ]' A$ F" w" q' |" G
//System.out.println(e);
/ t( E' [4 v0 n" r8 P( X& J8 y System.exit(1);
! u; {& Y0 A2 o; Z( z: u }7 ]! J7 h# [0 S% o1 _% t
6 Q1 M7 b( `) c. x* I4 c2 a
- J% ~$ t% @$ O0 f! j }4 h) J7 j- B. T. l3 n1 `( J
2 I/ v2 ^4 s' Z. Z( x5 [ private void swarmSetp() {' J% L: T, W: }8 c# `6 q$ [! X/ ^
list.addLast(new Agent(Id));8 ~$ x4 @$ d: t& [& T
Id++;" @: M M+ `9 F7 s. c5 c& e
}
, s. z6 X& Q- `
2 Z2 N3 i) M* G6 \9 D public Activity activateIn(Swarm context) {
; |4 u6 t% S8 t+ A% T) q% H; R super.activateIn(context);8 U: s7 a% G' y/ G: b
schedule.activateIn(this);; ?& S/ \7 r0 B5 D* e9 C5 n
return getActivity();5 B: c# r t$ ?' d, g9 r
}0 y9 z) B, ]! x1 L' B1 r4 k! @
8 i, R q: ]: Z3 v7 G
public static void main(String[] args) {
3 V) ^: M/ X: A7 @, e) n- r Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 j U6 S* d0 \% ]* ]2 M/ G: ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 c8 Y4 h6 y- R6 Y# X
swarms.buildObjects();
& h' U1 W8 \) i swarms.buildActions();
) [$ ~% i9 G: X* ~7 \ swarms.activateIn(null).run();- E# ^+ o" ?4 K
}
. u0 C' z2 s2 }0 ?- F% L4 |4 j3 _' D5 J2 c
} |
|