|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 e" q% Z% Y. A# ^8 d! J( w! o/ W, @ R6 R1 w+ W* u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 d5 Z" J% O: H) A, Y" H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; p6 i* h% n- O* ~8 K- H2 L
swarm.SignatureNotFoundException
2 J. E1 m% C8 N& W8 S' r% T at swarm.Selector.<init>(Selector.java:76)
3 Z! b6 d% l1 n9 X0 ?' u# w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 [1 q- j! R8 ` ?% x+ M" ?0 G6 z at ActionGroupDemo.main(ActionGroupDemo.java:67)' r- g; f- }$ L
1 s, t+ S$ ~5 y; Z2 g
) |7 W1 R1 s5 R6 H: Fimport swarm.objectbase.SwarmImpl;3 u6 x- C' U) Q/ v
import swarm.objectbase.Swarm;, P4 S+ l* v. Z- |' q- v! S2 n
import swarm.activity.ScheduleImpl;$ K0 w7 K2 e# S3 S7 h5 W& _
import swarm.activity.Activity;
7 p' Y2 o9 o% x3 M+ d, |import swarm.activity.ActionGroupImpl;
' H' J% D' p2 [$ T* V8 X3 s( uimport swarm.collections.ListImpl;' @5 ], h1 ]1 ]9 f6 j
import swarm.defobj.Zone; 2 A8 w; p1 v' M5 e6 L
import swarm.Globals;7 S& y& e! K/ a- H/ p# A
import swarm.Selector;2 C$ y2 _. P r$ k2 W( Z
import swarm.activity.ActionGroup; & R: k0 B f/ n- c5 m2 q
class Agent {* ~9 D( Z1 V9 o- O
char id;2 h1 `$ _1 d6 L% B( y
( f; b* \7 [" ?/ k3 U
Agent(char id) {
" O- Y9 c0 b6 o4 H* B& w b this.id = id;( K. h# N% h- R2 p
}
9 N, `. m' |/ M# U
9 t, J% u' X* |/ M public void agentStep() {! d+ ^4 ^5 P! {; G% t7 k& Y2 e8 {
System.out.println(id + ":" + Globals.env.getCurrentTime());' o5 V8 v: _' S2 K v
}' t& k% p4 n# L
}
3 L3 d1 A4 R* w' E; V+ u7 s( {6 g
public class ActionGroupDemo extends SwarmImpl {
5 N- ?8 T$ D+ l" y ScheduleImpl schedule;, C: A! r/ o) n- t0 L3 g: r
ActionGroupImpl actionGroup;2 }! j7 T- o" C
ListImpl list;
i |- ]* n6 d: w char Id = 'a';
3 I0 d0 g0 b0 q, R- Z/ ^* M, Z0 C% ^3 U2 _6 U( f- K
ActionGroupDemo(Zone aZone) {
; \; ^ I' O8 {! l8 l8 q& U) M% X7 m: W super(aZone);4 c& N, w; `9 \- ^6 e# \
list = new ListImpl(aZone);: M0 j2 W( a* Q3 I
swarmSetp();
0 @3 e0 C& i; O5 H0 ^ actionGroup = new ActionGroupImpl(aZone);- n( I& w/ C0 v! ~' _9 ]
schedule = new ScheduleImpl(aZone);
1 Q0 x, Z( ~5 F6 o try {
$ Q5 b# X/ q1 _4 j2 i2 H Selector agentSel = new Selector(Agent.class, "agentStep", false);8 r/ Z T+ K6 n! N5 F/ |9 D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 a- i( |4 H+ A# N
; w; B8 N2 T2 B# V4 L actionGroup.createActionForEach$message(list, agentSel);
1 a) t1 L- ?5 Z$ e6 d+ s actionGroup.createActionTo$message(this, swarmSel);( k. h6 y( R% j# N
schedule.at$createAction(0, actionGroup);
* [8 f. o5 _1 r _' z3 @0 R4 @- m schedule.at$createAction(1, actionGroup);
N( J5 }9 t( H! ^. q schedule.at$createAction(2, actionGroup);3 X1 L& a$ L M/ k4 d
& ^' T+ W8 V0 }" X$ }: U/ |
} catch (Exception e) {
9 V) C1 O/ N% b4 x7 q$ `; P9 ~ e.printStackTrace(System.err);
6 ~- X; i: M8 |( w, A+ Z( C0 b //System.out.println(e);6 l2 K- [% ^, S& Z; R! Y' q
System.exit(1);
) r( G/ ]# j6 @. z4 Q } @! F; s( T& X1 s! A9 I! k2 r
' z8 j0 A9 J# ~
2 W/ V+ B; F, ?: J. c
}' b" T( X0 K Y( w- {, _1 H
% Z* u% k! `6 l2 n3 C. t
private void swarmSetp() {- R P, n+ s# i! n$ k: k0 c# ]
list.addLast(new Agent(Id));
5 q5 o5 O" b; r# C+ w; { Id++;
& M: y) q. H6 n# `) F8 }0 g }
& U; ~6 @$ k6 B9 F* _. _$ d5 a' t) O/ `& v0 o$ X3 r
public Activity activateIn(Swarm context) {# W' d) U' M8 ~/ I5 W
super.activateIn(context);7 I. u/ m/ s$ H+ K7 \1 R/ J, f
schedule.activateIn(this);
) n$ h# i+ T' m# q* w return getActivity();4 y) u; V+ a" c; k
}9 k% A: \# e$ v% P: [8 q
) {. h1 P( Q+ h4 u! o' s+ @ public static void main(String[] args) {8 d, p7 i1 ` ~0 N% A- J
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 e$ R1 E# b8 P6 [5 p( g f" e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ i# t1 e" }. _ ^) @! S, n# ~! ^ swarms.buildObjects();2 J* [, g6 i6 k5 X' G$ Z7 P8 F
swarms.buildActions();
! R8 _* a# L, f, a5 W swarms.activateIn(null).run();
! Q- z% ]- \4 J& M1 p t }; U' R! C8 W, }
% ~, n- g: j- E; ~3 e: i1 X2 V} |
|