|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 a' c; r) I% T/ }% g/ _
9 W! K5 ]" }7 `3 a& k5 B6 |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. z) m& n# i0 c% ?% ?" f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. {/ ]7 L+ z& o; y% u3 e
swarm.SignatureNotFoundException& R8 s* c+ s+ {: o3 m
at swarm.Selector.<init>(Selector.java:76)
1 S' K) }) b; I; H6 Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ `# n7 F2 V5 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- g5 \; N6 \9 M8 j0 {$ P
+ R4 R& h% g- q% \4 G4 R$ g7 G8 I8 R0 p4 Y' |
import swarm.objectbase.SwarmImpl;3 N1 r! w/ X p" Q6 V! `( n6 y
import swarm.objectbase.Swarm;9 n8 e( C8 n+ x; ]
import swarm.activity.ScheduleImpl; {6 s: R5 a# r' u4 r: T) G
import swarm.activity.Activity;
: M+ j K, x& s, }& k/ M2 A, eimport swarm.activity.ActionGroupImpl;7 }7 L" X4 l' L, }3 c
import swarm.collections.ListImpl;
0 T* K/ i9 j8 U0 yimport swarm.defobj.Zone; . A/ R" t" Q/ l5 u" ^: C9 H0 V
import swarm.Globals;( i5 C+ z+ ~+ V( _4 }! T
import swarm.Selector;* J: ]- z) a+ S+ I) _) k
import swarm.activity.ActionGroup;
% ]1 E! n+ X# f- sclass Agent {
( A! Z. Z) G4 ?2 ` char id;" X0 y* A8 r7 u$ E" Q0 M1 a9 q
2 ~$ c9 l* w2 \$ e f3 d' d! H' I
Agent(char id) {
7 h3 @ c7 w! i7 G2 K this.id = id;
3 _& ?+ e, i" W$ m& r r }4 D j. v$ v, | W/ t) k, `+ ~
) M7 |. X; h3 M; e+ U: d/ ^* D
public void agentStep() {6 E1 G% M; k/ M9 U
System.out.println(id + ":" + Globals.env.getCurrentTime());) a5 N) Q+ g; D P
}
7 D9 |2 ~6 X8 S* J; B- F}
: P2 q( d. L) i+ d$ V" T0 [7 J2 K0 Y% r A
public class ActionGroupDemo extends SwarmImpl {6 p9 o9 X2 v- g' n
ScheduleImpl schedule;
4 i- F$ X8 Z& o8 s ActionGroupImpl actionGroup;+ N: n3 b2 }6 ^! O" m9 p
ListImpl list;
- @4 ~7 y! [4 i$ h; | char Id = 'a';
& w" E: ]( |% z" J
+ i& T) P0 M/ ]6 Z% h ActionGroupDemo(Zone aZone) {% C2 \ c# C! ?9 B: h, S+ u
super(aZone);
! ~# T. h# V' D: |; o1 G, U! O list = new ListImpl(aZone);# x5 k" {9 C# E, U. P& y
swarmSetp();
2 [& _5 x4 x7 [. Z3 c+ Q: u actionGroup = new ActionGroupImpl(aZone);
/ T" B3 G9 k5 D: d9 Y. W" J schedule = new ScheduleImpl(aZone);; B( `9 I, c, w" n, D
try {
1 h" P/ }5 z6 D& o8 ?0 s Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 o* V; V$ d7 g8 Q5 b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! S/ g" |& M9 r) z" V6 D& `% ]& m+ e
, }! e0 v6 ?' u, t8 Z" V" I# S actionGroup.createActionForEach$message(list, agentSel);3 ^$ t0 d- k& e) |+ C% H- @
actionGroup.createActionTo$message(this, swarmSel);
! O6 A/ ~9 G* h, A3 d3 B$ C schedule.at$createAction(0, actionGroup);
5 k" T: L7 E6 k. [ schedule.at$createAction(1, actionGroup);
/ A. c+ W) m6 K5 e$ P schedule.at$createAction(2, actionGroup);
) E( d2 s$ ~1 p( E& e7 E# }8 F- C Y* r0 r
} catch (Exception e) {3 S; j9 L7 w L" _1 Y, m$ X
e.printStackTrace(System.err);' G$ U7 C5 q' D8 J# J T
//System.out.println(e);7 y2 ]' s/ H S
System.exit(1);
7 C! K9 j" i8 j; H4 e& }" ?' r }5 a2 Z( T2 T6 N0 a& Z( S' R
3 x) t& d% \7 |! j
9 L- b6 D* F3 u }9 t' U0 U) u: [. R- c& y
+ w1 s5 _/ }) ~( K2 ^4 z, C9 h3 Q4 | private void swarmSetp() {
7 o6 I% W9 u. w, V3 f+ K3 g list.addLast(new Agent(Id));
; ~, k: s/ r% M7 O2 X Id++;
8 I0 ?6 `! j6 J4 U6 w }# A3 S, Y' ]& ~& P8 \
9 B% M+ J( w# S$ ^- B
public Activity activateIn(Swarm context) {: k9 H* @9 Z7 ?4 B5 x
super.activateIn(context);) y% u* T$ \ f( e
schedule.activateIn(this);( K0 Z* T% B. H; q# P
return getActivity();9 ^( r E) Y: x
}: ]9 U8 s2 k9 R% L; w
' |7 o5 E; r. ], F; ]- w
public static void main(String[] args) {
7 r1 d; m3 _* P' ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ M2 T2 M6 e2 Q& X$ W5 N4 N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 _$ L& d. i: c; [- u5 r$ D swarms.buildObjects();
9 |: @; U/ b. H, g* r9 l6 e! C swarms.buildActions();
8 {* H& m; u* m _ swarms.activateIn(null).run();
2 L; V+ g8 o% N% I4 U }
8 u% @8 D/ q/ n* w' |- }. X5 r
0 B0 s! }8 i9 ^7 g W6 k* ~9 t} |
|