|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) o9 c7 b# w4 m) X) Q' j& t* W! |; I9 P4 A& ?$ T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 v( f! t- [' _/ ~1 v% x) a5 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) Y; s1 Y0 r3 D# }0 Fswarm.SignatureNotFoundException
8 c/ r, r1 L0 e* r, W, p at swarm.Selector.<init>(Selector.java:76)
; @7 t8 h3 E4 v% C: { Z8 a1 ? at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ x6 n9 r( u* Z at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 {+ g; P P) _, u
: h9 t) E! Q* E" |1 ]" g. Q& q7 m$ s6 H0 C6 c# c
import swarm.objectbase.SwarmImpl;( B- y" a& x$ `
import swarm.objectbase.Swarm;9 i0 c* P+ I3 R
import swarm.activity.ScheduleImpl;+ W" E, w/ E: T0 h
import swarm.activity.Activity;3 G- ?6 \ {2 s) A" k/ S8 E
import swarm.activity.ActionGroupImpl;
* ~8 _9 h* l* a4 N2 iimport swarm.collections.ListImpl;
8 Y$ c, u( {& q$ Q' R" Pimport swarm.defobj.Zone;
7 O5 O0 v( b, p+ V" limport swarm.Globals;
# V3 G5 y$ }" r: C( pimport swarm.Selector;
+ S; w3 j% h4 v, Aimport swarm.activity.ActionGroup; ; U( C4 ]; j" ?! K, b: T8 e
class Agent {
3 {; N" n3 G6 L, n6 M! `$ Y. f char id;, n9 O' s9 U" y$ a$ @ I
0 v; d& U* @ m$ U% |0 ? Agent(char id) {
+ o9 j4 [5 r+ m7 {# r this.id = id;
5 l3 M6 i9 Y* l0 W) N9 [2 h1 V }
2 i# [0 B: b" K' L1 u
) f' e8 ~: X! i+ b3 S public void agentStep() {0 N$ W6 f B2 U1 i5 }! W5 ~1 s! q1 G
System.out.println(id + ":" + Globals.env.getCurrentTime());- H. {- c/ T. q( T3 J
}
. G- a5 l, D5 T3 Y! U}
9 j. t* _) Q8 g9 G
1 ]3 h- d% f" E* i, B3 ?, ?public class ActionGroupDemo extends SwarmImpl {. r* _& x8 x* v& ]
ScheduleImpl schedule;+ I2 @6 x1 c# P& Q7 c: D( b
ActionGroupImpl actionGroup;& Z* s1 S: y+ {" F% F$ [; W- I
ListImpl list;; M7 ]6 [* A5 d7 i
char Id = 'a';
8 r/ {+ F% b& Q: k$ K4 x7 g6 W0 [* L
ActionGroupDemo(Zone aZone) {4 ]8 S% r# |7 P- N
super(aZone);7 a( W" s1 u# \% ^1 y$ |6 N' C
list = new ListImpl(aZone);/ z" N! e9 h/ n- G
swarmSetp();# g+ a* i/ j3 h9 S5 f
actionGroup = new ActionGroupImpl(aZone);
- _0 u- ?% a6 e4 i+ X" O+ U schedule = new ScheduleImpl(aZone);
% W* I9 N2 e$ P6 O- m& S try {
' j$ S' K$ k Q7 U% m Selector agentSel = new Selector(Agent.class, "agentStep", false);* F J) {1 U. V* i4 |; }4 ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ p1 v- v: j& x) ?: n E
, }" c% _3 E. M/ G actionGroup.createActionForEach$message(list, agentSel);- Z' F; ?$ A) Z9 x* @- b
actionGroup.createActionTo$message(this, swarmSel);
% b% Z# n8 x5 U3 Z- m' b. Y schedule.at$createAction(0, actionGroup);5 b: k) a! t3 {7 A9 U* r" q
schedule.at$createAction(1, actionGroup);
) m q6 o* ~2 d4 G schedule.at$createAction(2, actionGroup);( j# `# I/ W t0 v7 `) C
. O% y# {% k v. m
} catch (Exception e) {* C# p8 f9 E0 l
e.printStackTrace(System.err);
& h4 w6 D' o- e- ?* c: g& ~. P8 V //System.out.println(e);
2 p) [: D l/ ~2 A( T r+ w System.exit(1);8 E4 e$ ?) j9 ]: n ]4 B9 U' W
}
5 O# V% c* i5 U& m& W
% x, E. @. t K' U( i! B) u$ ~
( S6 W6 r: M( o& ` }
4 L T# V9 w! V; ?+ ~: s1 l8 I' p+ b+ s9 U
private void swarmSetp() {
) X) j! E9 q! J/ W9 K list.addLast(new Agent(Id));
2 [5 p S% x0 V" x0 ~ Id++;' u% ~2 R1 |( k9 ^7 n
}
$ n3 l5 K* Q5 k1 A) |( g; g0 r! ^% W: N! f( j
public Activity activateIn(Swarm context) {
3 l1 ~2 c/ \+ u6 ^* ^ super.activateIn(context);
4 c: C6 n& a; L$ B. U0 ]' { schedule.activateIn(this);
4 P- _+ M! J2 e; S, g6 F& a return getActivity();
, O* L" ?% |/ b6 w4 L }3 R/ w0 N+ Z& {; ?/ K- U
% R" a Y( _- m: u public static void main(String[] args) {
* u# H, j% B" C S2 m9 J Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" C" z; J3 C @* v3 n* W Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); J+ h( ^8 L; {- s
swarms.buildObjects();% N. H z0 n0 ]) [2 o; |# K
swarms.buildActions();
; L0 {! s* L3 o' k& E swarms.activateIn(null).run();
& s7 ]$ c/ y S }! ~+ N# b* n* K; y+ h: r+ }9 \
5 K c9 _- l+ q6 r} |
|