|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ C7 M p3 c- P$ m* @) L/ N8 T. l# S
6 J3 o' ?' E a3 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' f% `0 M$ j' D5 u" F6 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% _6 [6 C. K N6 j% e
swarm.SignatureNotFoundException
" ?, ^! I8 q4 f at swarm.Selector.<init>(Selector.java:76)
; R; M i. D Z5 a# D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 \( }& P* S3 K0 ]# J. y. L
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% }3 H m9 l* @
7 x' M( ~( ]; E7 \$ [$ _1 J. I7 ~! [9 h8 {8 Q5 G1 L
import swarm.objectbase.SwarmImpl;, s6 V/ q3 D! }1 p' l6 O
import swarm.objectbase.Swarm;
5 f4 t- _7 j+ b4 f3 U. z! a/ j# Aimport swarm.activity.ScheduleImpl;
' Y0 a- Q. ^( J. y- N5 rimport swarm.activity.Activity;
% |+ z/ x! t0 T* G# J+ ]. Limport swarm.activity.ActionGroupImpl;
: \1 F3 T# w& i8 iimport swarm.collections.ListImpl;/ G& _$ L) m' ` e
import swarm.defobj.Zone; 0 o6 G0 l) L, w! b0 D+ m+ C
import swarm.Globals;* B5 Z# n, n! J' e( S9 Q3 ?
import swarm.Selector;6 t) z$ I; `5 J
import swarm.activity.ActionGroup;
; U1 j; q* d l- O/ e4 Kclass Agent {5 v1 O! M. A0 n( Y: C7 C2 j
char id;4 o |) J) o# C8 [! I
% B8 f( \$ @9 e( b
Agent(char id) {
! b# ?, f% K- X, b# c this.id = id;
5 Y) e% ~ l: I/ u* i) N! e }9 {; H0 `, s+ o3 i3 k
3 C- j2 d( [' J- H9 M* m
public void agentStep() {& A9 H4 \# q& ]; k4 X$ \
System.out.println(id + ":" + Globals.env.getCurrentTime());
" ~! _( W4 w/ Q" b' w$ t }8 k' c2 D- n" z3 r, S
}5 n. w. u4 `* W! Y; k6 E2 |
1 ~3 S( c9 I+ b: @- N* E# y! mpublic class ActionGroupDemo extends SwarmImpl {
P* w9 [8 c# _9 X5 d- c2 Y ScheduleImpl schedule;7 e7 g9 G, T, O* D. x
ActionGroupImpl actionGroup;9 v: A; j0 X8 W& B/ i
ListImpl list;
3 a q) [* x8 u4 S9 o5 R4 f0 E char Id = 'a';
! W' ~' k- }. B" W. V4 k; @
9 B, K9 r5 N+ F) O ActionGroupDemo(Zone aZone) {* e7 q6 M# Z, R c6 m
super(aZone);
% v+ r: U" a+ V1 F list = new ListImpl(aZone);, m* ~, c7 ]: B9 S
swarmSetp();4 ? h& p! A6 \0 Q$ O2 O
actionGroup = new ActionGroupImpl(aZone);! l+ i6 a) ]; I4 q: L
schedule = new ScheduleImpl(aZone);
+ j* ~2 m/ s o1 F$ b4 R try {
7 y: \! x O T3 h; d0 d3 I2 H Selector agentSel = new Selector(Agent.class, "agentStep", false);
' r u% K" _1 Q8 y% @5 S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; F' v/ L$ s4 h5 H% A# e
( N" L5 ` M1 V% ?7 Z( D actionGroup.createActionForEach$message(list, agentSel);
4 y3 M2 W( R h( G actionGroup.createActionTo$message(this, swarmSel);
, \+ O# H* `) u- j4 |" t schedule.at$createAction(0, actionGroup);
. ~/ d. {' m8 [/ n( A+ F, U schedule.at$createAction(1, actionGroup);/ V+ o l! i7 ]" e
schedule.at$createAction(2, actionGroup);
: W& |7 R, y% Z. w$ G3 L- V5 B, X3 ]' J5 n% Q- I
} catch (Exception e) {) C1 E* W1 b) V8 S& L$ E2 ?
e.printStackTrace(System.err);* A2 c- D% g& F
//System.out.println(e);5 a5 \2 Y9 B9 S3 C6 F8 N9 l; [9 J
System.exit(1);: I/ [1 g7 G# ]* _( e( |7 k
}5 ^3 H% f4 m# ^# r
5 q2 Y$ `/ Q2 k1 f
5 d8 ^; z1 J# M) R1 h, z, ~$ D }, r' r8 w: n) |5 J9 W% T7 j3 H
* s$ o9 c6 S4 Z- Y' W3 d: j0 ?
private void swarmSetp() {
9 O1 t! ]3 t$ f6 l9 @ list.addLast(new Agent(Id));% b1 M u) k4 z7 S- L
Id++;
; m3 x4 J- o2 ^5 r/ _- a$ Q }9 R2 J! M& T) d& p. h; F3 P
G# C4 a2 `% r6 c- }' P0 T
public Activity activateIn(Swarm context) {: E" }/ r* f8 K1 d( h x8 V& R
super.activateIn(context);
+ s5 @( [- s' T( e* B2 a schedule.activateIn(this);2 n" s8 j$ i. @7 Y! f; h2 i
return getActivity();
+ H3 V: v5 t) t# c+ {* r! q }
`: U* l" `( I' y4 W6 _ e! [" X6 M( s- v. v# F
public static void main(String[] args) {: ?5 s2 J9 L) X( M& U* }
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; c b1 T8 M* y M9 [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: S; l: @, n/ t
swarms.buildObjects();6 ]# S3 p+ u' [( e" U! b s
swarms.buildActions();1 h' s- u8 U4 {) M! M
swarms.activateIn(null).run();
# N3 j7 ?" I q( y! M. ? }7 q0 S; ^0 V) l; _ h5 ^" Z7 n* o
' S% b) [, T7 p} |
|