|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 Q+ y2 Z& C/ U+ o) p
1 T6 E7 U2 y% l) f) X! v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 k J/ X0 ^% W9 [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) s% a! |* Z% aswarm.SignatureNotFoundException% q* u8 n1 g! V% u
at swarm.Selector.<init>(Selector.java:76)
- r! k2 P0 Z4 z. q' E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" _; |7 l( b# v- m x4 i
at ActionGroupDemo.main(ActionGroupDemo.java:67)5 G) s' O1 B' V& n
" I3 X4 v, H3 m* E% r; x& ?
5 x7 f3 q+ f, L! o
import swarm.objectbase.SwarmImpl;6 i2 s; g: U# B
import swarm.objectbase.Swarm;& u. L9 P+ _# d, J c/ Q8 h
import swarm.activity.ScheduleImpl;1 t: m% m9 {/ ?! N) ~
import swarm.activity.Activity;
) R H, H" f0 wimport swarm.activity.ActionGroupImpl;
3 `& f! ]0 E6 q- |" @2 T* e! Pimport swarm.collections.ListImpl;: K! L0 l A+ @5 {* b
import swarm.defobj.Zone;
' H2 Y" h/ c- ]3 I: x/ T( L/ ~import swarm.Globals;
% ]: q7 [( ~! T, Y. u3 j0 U; rimport swarm.Selector;* ?: D# a- Y9 e" G5 m/ X( X
import swarm.activity.ActionGroup; 1 G3 f) J& J8 q! V6 J# ^
class Agent {6 G8 A! q, z7 t4 A3 |1 I- s* u
char id;6 x! _! N9 \; R+ g& w8 x
: Z; r7 j$ T0 \6 Y" ^
Agent(char id) {
* Z% ?% {+ f. ~& Y9 w this.id = id;' A. M& X& C* S- s* |; b
}. y1 C7 L8 f: J6 l; H; k
3 z) I" `( _; ^. n |( P" Q. G public void agentStep() {: A( U" r# C$ Q" n! [2 K! T* r
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ F1 v5 \" L( G/ t, ^- H# A }3 N% A) J; r$ r. K
}
7 Q- C- m5 [; ]6 @5 y
: a9 q& k5 O/ g. Ypublic class ActionGroupDemo extends SwarmImpl {+ }, p7 m; g5 T# y! `8 x; F) h
ScheduleImpl schedule;, A1 o2 `- T- h5 g9 Y: W# Y+ y
ActionGroupImpl actionGroup;
& c" S3 v' r# W6 [8 G2 {; K- v8 u9 G ListImpl list;
! }& R% t7 v& Q W. ] char Id = 'a';1 l; n6 x a/ H
5 |% C( l x. m+ w& }0 j* d. M% v ActionGroupDemo(Zone aZone) {
9 s! a& z N# _8 E2 k9 } super(aZone);
4 j. D+ |) g, N% H list = new ListImpl(aZone);
0 @. O/ I8 o2 X3 @5 n% y% x k swarmSetp();
0 c6 c; y0 ~+ ?5 q0 | actionGroup = new ActionGroupImpl(aZone);
3 }& f) ?2 n/ J- |- W: @ schedule = new ScheduleImpl(aZone);; L* L7 z" d) b. Y' D5 ^
try {0 X, C, n2 N0 J. R
Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 b7 K9 _9 F* H6 ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, v& q& W3 m% z. x0 U
! t. \/ e# f6 R9 e! C
actionGroup.createActionForEach$message(list, agentSel);
( }& F7 r- z5 t, m% l actionGroup.createActionTo$message(this, swarmSel);
4 n. l- h) w. s# G schedule.at$createAction(0, actionGroup);
3 w$ b7 M, x- U+ z schedule.at$createAction(1, actionGroup);; k# a7 e7 m) E" A6 k) N- b
schedule.at$createAction(2, actionGroup);
! ?$ O6 ~) }5 j) ]9 n
, n T7 Y6 m% t2 |* l* b- ]9 m: z } catch (Exception e) {
+ S( f/ A2 _% l: A2 { e.printStackTrace(System.err);& s) L- h' m( }' K4 ~2 D
//System.out.println(e);9 O/ G; P* G; p
System.exit(1);) [$ M3 ~3 Z) O. q. [" X
}6 R+ U. p6 n, [8 m& w$ G3 e
, a4 Z- k8 d. Q' e' m- e5 R/ L. T; ~- N
}; K+ w3 _' L$ C& A
+ c; |. Z" Z, s# }: q z private void swarmSetp() {- l4 C! l( f3 z# d; q# G" X
list.addLast(new Agent(Id));2 L. x h2 g# L2 U. K
Id++;* m- x; u0 M5 d3 Y$ v) h: {
}1 I' e# D3 ]7 Z& [. m( h
- F3 X; m( S3 W8 F
public Activity activateIn(Swarm context) {+ w8 }: f/ a9 @6 A) J
super.activateIn(context);, V* h" E) T# e3 G
schedule.activateIn(this);
8 v" ^0 O& x" D2 Q2 H' x return getActivity();6 m* ~. Y! B# G8 Z4 _' o
}
/ S- R3 D1 [. G; `) T( U) v1 z( U- v
public static void main(String[] args) {
, O3 v9 X4 m/ n- o; u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- |9 F) H8 l$ d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 z4 u# H8 w. T" {" E swarms.buildObjects();
* G0 }* j B9 @ swarms.buildActions();
; c' S0 A% U7 e swarms.activateIn(null).run();
9 i* e6 x+ ~: ^, T1 U }
" v+ B" U5 I0 @
% Q+ L& z( r4 P* P* G+ S} |
|