|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, K" o0 h0 z+ ], R. t( x5 [& T: m% \; E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 e/ J# r2 b3 g* p4 |) L: B; C. ?+ ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, W( ~( R, `2 h) j6 u3 `swarm.SignatureNotFoundException
, X) `7 b# }1 o; O& n+ v at swarm.Selector.<init>(Selector.java:76)
- @* \! S, B4 a+ y m: Z! z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) k3 b W- {5 t, E; j at ActionGroupDemo.main(ActionGroupDemo.java:67)
! t- k" B8 |2 g1 p, k. B
. o2 [2 t: v0 e1 R8 I1 P. g; f; l; x) `( B* M6 n$ ~3 U
import swarm.objectbase.SwarmImpl;
3 b, G- r/ [1 F2 |3 qimport swarm.objectbase.Swarm;# G& z- C$ p, W) k& m% E0 |! V! h
import swarm.activity.ScheduleImpl;
1 z* Z; a7 C0 p6 C* ~import swarm.activity.Activity;
$ p- B* l7 a7 D, Rimport swarm.activity.ActionGroupImpl;
( M; {" l; E b i. {import swarm.collections.ListImpl;% w- D3 e5 t/ P
import swarm.defobj.Zone; 8 V; w$ n* J+ p) q% F4 k
import swarm.Globals;
# b$ D9 Y3 @ S; w+ aimport swarm.Selector;/ P# D% S8 R1 w! n6 \
import swarm.activity.ActionGroup;
4 _) s" L4 B( K: z$ k7 A8 \class Agent {
) R/ j( w! N/ z+ ` char id;" V2 D% o2 k7 g# e! k# @7 H# r- I0 U% W
; J2 c& p% W. j5 p( S0 ?
Agent(char id) {& a' I/ i6 n& r7 x9 ~7 v! i8 }
this.id = id;5 C) H, o7 A/ _4 i
}
: B+ b6 N. z0 C3 G
G5 m* U2 ?" p2 G1 o public void agentStep() {
. Z! F% S! [- p6 \ System.out.println(id + ":" + Globals.env.getCurrentTime());/ o3 [2 N3 S! K; [" j* F' l
}
2 F4 Q. F" Z. L# l& z}9 l B) M- |- J/ }: p# o
, ^+ s; g/ i3 n9 _8 h
public class ActionGroupDemo extends SwarmImpl {( o, [* o& ?( D* z' w
ScheduleImpl schedule;
4 `4 C9 [6 X4 X- Z3 r ActionGroupImpl actionGroup;
3 z% y$ H* y6 q+ z ListImpl list;
; X* a0 \1 M1 @5 i char Id = 'a';7 M# I+ `5 ^- `) C
5 G9 j+ Y& a: ?% {
ActionGroupDemo(Zone aZone) {
) A5 l0 A# U# n super(aZone);, s, e# h3 @8 B. i* R
list = new ListImpl(aZone);% A% t' ~$ a4 e& P3 W0 e
swarmSetp();5 g: @! O. X' A* U/ l+ G% W- a
actionGroup = new ActionGroupImpl(aZone);- x2 v5 g9 r' y+ x8 J: s z4 {" g
schedule = new ScheduleImpl(aZone);
0 j* k4 ^$ Q6 {$ O& K! n try {5 F) L7 b7 k+ X O$ f- F
Selector agentSel = new Selector(Agent.class, "agentStep", false);. R. o5 |3 v1 Z, [$ o8 h
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ j' v" ~( D2 m* W$ ~2 n4 s" ^ 7 R3 U# u# [; ~
actionGroup.createActionForEach$message(list, agentSel);3 x; _8 Z- F' @0 w: ]
actionGroup.createActionTo$message(this, swarmSel);. p& J6 Z' ?0 Y1 _/ v9 Z7 z% S
schedule.at$createAction(0, actionGroup);- K, b) n: W1 h7 P" M
schedule.at$createAction(1, actionGroup);
+ A* `( ^2 B: l! R* d schedule.at$createAction(2, actionGroup);1 t/ {+ }& q" t5 g
1 n! ] V ?: }* ~' m } catch (Exception e) {% p4 t. i: W- d; b3 }9 v
e.printStackTrace(System.err);
( D! _, O" A1 d( J* S //System.out.println(e);
# l8 p8 A, H( f! r' D System.exit(1);$ g/ i" _" K/ {2 h# K
}$ @+ ~/ g. j7 P8 f% o% F0 G
) v. k5 \6 |$ ~ L* n
& ^/ ^9 X# X7 T }
3 _% C. I- O' X+ q! W8 F: g
" P2 t6 R, y5 H* x2 v private void swarmSetp() {. Y) Z9 R% `0 T" @. ]
list.addLast(new Agent(Id));
8 i2 v( j# h' _3 \8 v Id++;3 Y! H% }; [8 G4 A( }+ |
}
6 ]% a+ R8 w* m8 p( p# u" i" p- ?/ [9 N- A
public Activity activateIn(Swarm context) {
; f+ V$ K- g% O, u' b2 t super.activateIn(context);
5 N3 p" t" }+ u, i; d# S* @1 P schedule.activateIn(this);
- h$ S! X5 u2 A, G! G6 @+ E8 J return getActivity();! Q" [; G5 ]% d1 K9 B6 t
}9 I3 o' ~8 S; e3 }- c, \
/ ?, Z* G1 I0 ?) G' O public static void main(String[] args) {" e7 W, `5 J1 C2 Z" m& c- |/ i1 A
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% H/ n. W: h) J3 y; L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 l1 R1 f* @$ h: C. r swarms.buildObjects();- h; I" h( r) A( S
swarms.buildActions();( k0 h% H6 T8 }4 I
swarms.activateIn(null).run();$ P+ Z+ L8 p( }; C4 Y0 N2 r
}3 ~8 l0 W( } G" s1 T; K
' G6 \5 |% m' U( v: x/ F0 Y} |
|