|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 R1 e- X0 }3 m2 H% T! a1 R7 m+ q% _8 O3 q3 ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 U5 X2 x5 u4 S5 V' }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 L. T7 S2 Z" v: iswarm.SignatureNotFoundException; b6 j0 \. C' |$ ]
at swarm.Selector.<init>(Selector.java:76)
# \% Q$ b2 U6 l# V0 N2 K7 L at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Z+ c9 n) f7 Z. K1 m, i at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 F( V: W& H& N( F4 {* Q: Y3 O6 g' M' E
& u% F8 [2 H o2 i" b3 O
import swarm.objectbase.SwarmImpl;# j0 {5 K- E* i: c7 U
import swarm.objectbase.Swarm;
, j& l. v6 [, h/ w7 ximport swarm.activity.ScheduleImpl;$ |4 K+ j8 e+ `' [
import swarm.activity.Activity;. @7 v$ A; W+ R7 }
import swarm.activity.ActionGroupImpl;5 _) y9 M5 m) @' d9 |6 t, @
import swarm.collections.ListImpl;4 d- ]( h( h5 v
import swarm.defobj.Zone; ( J+ X0 T3 h6 i5 {" i
import swarm.Globals;) M/ ~% N+ H1 h+ n7 |% @
import swarm.Selector;
, @. n$ U5 c- _0 D+ b6 Aimport swarm.activity.ActionGroup; 9 G% d' A# O/ h/ @
class Agent {7 \5 X( l0 I; I6 u' n4 q
char id;
* A. l8 m k0 a H& m7 ?9 Q
3 Q; d K( s5 J Agent(char id) {
; I/ F5 Z8 _3 { this.id = id;& U2 \* }8 ?3 S
}
+ u: X4 g$ V- M* e3 P6 l5 C2 F5 ]# @5 W- ~ U& r; g! @
public void agentStep() {
0 k; \' b# x- p% h! a System.out.println(id + ":" + Globals.env.getCurrentTime());" [- M' b' R6 S
}' u0 a0 d8 H4 s
}
5 Y7 _1 f/ b! H- Y, O' E/ n/ R# I# }4 J! U9 ]4 h1 s/ z* L& }
public class ActionGroupDemo extends SwarmImpl {
6 N& e/ }7 d4 m; R5 h. r ScheduleImpl schedule;
9 d; |7 t* h* x+ R/ l ActionGroupImpl actionGroup;
! o- Y9 Q3 p" s( w ListImpl list;
0 N. @2 d9 s) P( G0 h! k char Id = 'a';
0 h5 U% u, ]" S% ^7 @" a$ k( n; ^* J6 [) C2 g
ActionGroupDemo(Zone aZone) {
4 i* X( ?; @/ C; y1 x' d8 F% {$ f super(aZone);
9 f9 T# x9 P6 @/ s! f) P: T! ` list = new ListImpl(aZone);& B# X; q6 k8 p- \9 L7 E, `1 ?
swarmSetp();
" R3 K0 L O: Z$ v# [0 D actionGroup = new ActionGroupImpl(aZone);% v! F5 S# i' {. l8 x
schedule = new ScheduleImpl(aZone);/ B( t' u# |8 u1 @
try {4 V) F9 ?# ~1 c0 M
Selector agentSel = new Selector(Agent.class, "agentStep", false);% o" O; f" z5 R0 U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# ^. n% c0 H. G" m
% ]7 V# m1 l' C& P, m z4 @
actionGroup.createActionForEach$message(list, agentSel);9 f6 |. Z" g: {1 E' A
actionGroup.createActionTo$message(this, swarmSel);& y/ `5 G( [' |( Z0 ?! r/ k
schedule.at$createAction(0, actionGroup);
$ `! M7 s& R0 \! _; z- w schedule.at$createAction(1, actionGroup);
( H% K6 |; s9 J9 _. j) Y5 v2 @ schedule.at$createAction(2, actionGroup);
* `, v) o9 F# y' Q( h. |
: @: R% _; |" A$ I } catch (Exception e) { G, \! B/ r* @
e.printStackTrace(System.err);- o, E' J7 y/ g; K
//System.out.println(e);+ E' Z+ V8 Z; S9 p
System.exit(1);
& j# s$ e: M/ J2 a! E }1 s# g0 |& h1 `
' T/ K, o0 ]5 s/ r) e+ @' l2 a U& l/ V/ q# e, O% E
}5 m0 I/ N& ?* q S, x
" K3 ]1 |/ r6 {2 e
private void swarmSetp() {
8 g9 n9 Z9 \/ S: w list.addLast(new Agent(Id));
1 n& O/ ?& Y" J& C Id++;
: [1 Z5 f5 G6 a& w }
# O7 _( J' `/ D8 X
1 s. V% y! q6 |+ H( F4 n public Activity activateIn(Swarm context) {
6 b. V+ f8 g4 q( c( q super.activateIn(context);
0 b& H5 B5 f$ d( q schedule.activateIn(this);$ v2 b1 q+ ~* _6 I
return getActivity();
& K' ~' g0 c+ ~& [; @$ Z; X }
* O+ p/ `( R4 A6 r* I' \! ]$ I$ e: x
public static void main(String[] args) {
* ?+ g. d5 n, _3 k3 V' G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); [2 M/ l) _* U& U2 J n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. R% x) h2 ^3 [# N& p; Q
swarms.buildObjects();
# V9 y# X1 g9 {) o' s' U. o swarms.buildActions();
) k" k0 I7 Z4 j. S+ _* E' c& L swarms.activateIn(null).run(); v5 k7 \ x0 C4 C
}; [: G8 L4 e! ~7 S
8 D. i, u% L4 L: T; G} |
|