|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 M7 {* q! R s/ P. J; J3 o! m0 I# b, N" A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% F$ r! O- X1 H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 e, s0 ^: H; E" j% c
swarm.SignatureNotFoundException
, A3 R4 _% ?9 g0 f at swarm.Selector.<init>(Selector.java:76)
* e' J% g" F' g% c8 p' x4 A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ t4 l8 Z6 H, J4 R at ActionGroupDemo.main(ActionGroupDemo.java:67)1 J4 q' J k" w( [
' J0 O. M$ W9 v" G) d9 O0 B: W. K H6 p) f4 L% @
import swarm.objectbase.SwarmImpl;- C" c$ R' p) \# G, ?
import swarm.objectbase.Swarm;; Q8 l& P, S$ s( \
import swarm.activity.ScheduleImpl;6 t, L! Y$ @- Y* W" ]% J
import swarm.activity.Activity;8 L3 a. u, f1 H) T: t
import swarm.activity.ActionGroupImpl;
! s. _2 X6 ^, [import swarm.collections.ListImpl;
( v8 [+ p. L9 B' Iimport swarm.defobj.Zone; . p E8 B$ ~" y, ^9 |" r' m% J2 X
import swarm.Globals;
- |' v1 i$ _: s- qimport swarm.Selector;
+ f, f8 K8 T" ximport swarm.activity.ActionGroup;
* s0 P9 K" e2 Pclass Agent {" _. G0 ~2 N; v
char id;
. P$ {) @( [# I# C! s) u. {, F) A
Agent(char id) {& n- z! ?4 X- m5 Z- {: I
this.id = id;
$ C( A5 e% B, o6 O9 E, W7 h) e }
2 C, w1 W7 B( N- w' u( N% Y7 j9 q
' ~, H+ e Y% I9 z# U public void agentStep() {
8 j2 d1 I) @: z: _. |4 A System.out.println(id + ":" + Globals.env.getCurrentTime());
E M# u: Y& _" o3 C1 [ } M8 o2 x# J/ p v" c! I/ R3 N
}
4 Y9 \: w: ]! Y j( g6 h z. ]$ M1 w6 w" G9 M4 Y% g
public class ActionGroupDemo extends SwarmImpl {* W. @# |, q9 D2 f. p; K8 u
ScheduleImpl schedule; P0 |/ W) k" A; x5 U5 V6 k2 R8 h
ActionGroupImpl actionGroup;6 A* g# @' p \: m+ v, J5 X
ListImpl list;5 W1 p1 O4 ]" k
char Id = 'a';8 r* r2 u+ d! p! c2 R" Q. h
' ?$ W6 P- X1 h7 s! m2 ^! s5 Z l ActionGroupDemo(Zone aZone) {
/ b7 O3 g" F, X# I X6 ^' w super(aZone);
1 s( R9 _4 n" s list = new ListImpl(aZone);9 w: D* V$ w r7 e( k1 C! c4 z( H. Q
swarmSetp();
- o4 ~3 m& t$ l+ {9 G3 F3 S actionGroup = new ActionGroupImpl(aZone);
" P" H. T# a* E5 [+ H3 F% U; K+ j4 e schedule = new ScheduleImpl(aZone);2 j; L; ?. u4 F4 L$ e
try {
& A' w1 T4 M Z6 x Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 D) H& k! R+ W" ]/ P! ^: ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 M$ r' u/ l5 ?/ c
# e0 q3 X5 U$ R3 ]* P/ J8 K, P actionGroup.createActionForEach$message(list, agentSel);$ [* f( N9 ^! T$ v& U: q
actionGroup.createActionTo$message(this, swarmSel);; q0 z7 M2 L- f" {" H7 f6 u# g
schedule.at$createAction(0, actionGroup);8 s6 d; @& [8 I' w9 H
schedule.at$createAction(1, actionGroup);) P5 \: u* v( ]1 V
schedule.at$createAction(2, actionGroup);2 _4 n( v0 {. }; u1 ~
$ g% f2 g. I4 \5 j } catch (Exception e) {
- ~& i7 j( N2 V( }' [ i' _0 z e.printStackTrace(System.err);
% N- y$ ]; V+ v: a& a* O/ _% P //System.out.println(e);
" K& R8 g% L# i' ]' e: Z/ y7 m3 v3 B5 z9 y System.exit(1);
9 Z n d* o9 ^8 P7 s% t }
1 l* z: O1 w7 L4 t7 ]
, q/ {! \5 u$ r* o2 f5 S$ {
0 d, `0 Y% s( ^1 W9 g# P5 m* E }! u. A1 t& P2 z; k Z" W: ]
# }7 T, s) M* ]' k1 i" Y private void swarmSetp() {2 @" J8 ]& x* m F8 {0 A' ^0 E
list.addLast(new Agent(Id));
. j7 b! _. x1 R/ [- k7 P0 G Id++;
8 U9 T0 h M9 H! m }
- r v9 F; m6 p) T. ?' |
( {. {5 E; Z: | public Activity activateIn(Swarm context) {3 |4 ~3 T, U, V- y$ U F6 H
super.activateIn(context);4 g. n- x; O1 W/ s& i3 v" j# `
schedule.activateIn(this);9 {9 U$ `" U# ^- X
return getActivity();# v5 u( y% M' S) t
}
* _" ]3 s" \( t. Y* s
) g/ }! p% A1 V public static void main(String[] args) {& k. @* B. t" d
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 y8 O; a2 P9 }0 z: o8 w( h+ `8 l& n& |' u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 p1 }9 A, Y, d+ z6 G
swarms.buildObjects();
9 T8 T6 i @- [6 H8 P3 Z" i swarms.buildActions();& b2 [- b0 H8 ]0 y0 | W! I# m- q
swarms.activateIn(null).run();
]3 m: T& Z% W9 o& O9 g, n }
4 P6 v+ k1 t- s: P" C6 }: J* H' ]$ g
& p! U6 }+ L! S& `, ~8 ~+ E} |
|