|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 y& }7 M+ b& B5 D8 W% v: F: l+ K1 V+ p* a N7 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 M# ~. O i% U7 u: w' e. s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 J- ]0 ]+ I$ _$ \! }
swarm.SignatureNotFoundException! b( x" @/ K: o) x k* d3 U
at swarm.Selector.<init>(Selector.java:76)
- q9 l) e# a2 ~4 O8 t/ T at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 }; @9 ~% s) | at ActionGroupDemo.main(ActionGroupDemo.java:67)
. u3 u3 N, `' e; H- @4 r
* c% I8 D% }1 y1 D8 n3 ?5 D5 ^. w0 s) ~9 b4 [! H, T! h |) C
import swarm.objectbase.SwarmImpl;2 _7 G" O& |7 n1 H, [6 [' P
import swarm.objectbase.Swarm;
3 K Y' _' w: iimport swarm.activity.ScheduleImpl;
8 _8 c: ?7 ?7 l7 J" J, o8 G, Vimport swarm.activity.Activity;
, f- C( N5 M, {$ C2 zimport swarm.activity.ActionGroupImpl;' I! O O7 R. V* D+ e
import swarm.collections.ListImpl;
1 p7 w x9 M6 @ j6 Jimport swarm.defobj.Zone; 3 c+ o1 x3 l4 f7 Q2 o
import swarm.Globals;
% V2 E7 } e" H" ]import swarm.Selector;
* y5 H, }0 B' Y V( Bimport swarm.activity.ActionGroup; 8 B- J7 ] {, _, @0 o( d
class Agent {
! v$ B( W1 `+ W5 L% D" v8 V. B char id;
" d0 a7 [2 I7 m: Y2 _8 v* q6 b ]& R, _4 z' W& U% G3 N5 A
Agent(char id) {
) Y3 {, S- X' Q; ]" W8 u3 P+ F this.id = id;
* L: p1 [% F7 P ^1 }' [& @ }: \6 d: U5 f1 `1 M
/ a f( S/ ~/ D
public void agentStep() {
/ V! D9 m- q) k" \ System.out.println(id + ":" + Globals.env.getCurrentTime());
& P3 w( N) S1 \- k* \0 v }- Z. J" t2 L6 n9 Q& ^
}2 E4 `) r Y) A% {7 M
2 O8 t& n5 l) p+ w5 ?
public class ActionGroupDemo extends SwarmImpl {
5 o" G* k g" X/ T( ^7 V ScheduleImpl schedule;
! h; l) S) M/ j& [( t/ Y3 p ActionGroupImpl actionGroup;; ?/ l( y/ w/ w! g w
ListImpl list;- U4 M9 C/ L5 T( N6 i$ F0 B
char Id = 'a';
& z) }; C' ~- ~# X
$ s7 Q% Y, i K l8 e ActionGroupDemo(Zone aZone) {
( }" o( q: n( m" O, w super(aZone);( i5 Q [' g: L, ]5 e& Q4 Y
list = new ListImpl(aZone);
8 G* E, b% j2 V- H, N# z- T: I2 u swarmSetp();
. T: D& @/ N2 K: T" ]5 e. h actionGroup = new ActionGroupImpl(aZone);# q9 s: B- ^" P, C/ B# X
schedule = new ScheduleImpl(aZone);; i2 d+ V- M1 ?- x: z2 Q
try {0 W. R/ T8 C, m5 H
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 s+ P5 y0 \* |) u, P3 X; n Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, }! v2 h2 Q5 y7 o8 a r
+ c7 g" ~/ w* I" b" n9 E actionGroup.createActionForEach$message(list, agentSel);
, @4 u6 a; E/ H: T" _* T7 j- @ actionGroup.createActionTo$message(this, swarmSel);) ^ K- }( q2 K7 L6 W, u
schedule.at$createAction(0, actionGroup);6 d% y% p/ [7 Z! c; O
schedule.at$createAction(1, actionGroup);
0 ~! q. j4 T6 y) u o, J schedule.at$createAction(2, actionGroup);
3 n& F% ~; [% o7 ~* X/ b- n- `5 g2 s# \, v" T
} catch (Exception e) {' ^% B5 {, C# w2 [" L: C1 b( c+ I
e.printStackTrace(System.err);$ c% u5 r2 X$ v5 ^9 d6 E; ]
//System.out.println(e);
6 H. m. R0 G. z: h' W% ?6 y2 e9 N! X5 @ System.exit(1);
6 H* \2 E5 ?7 p2 s8 k, \ }
- f( l5 N' f( m6 u" ^7 O/ W) v2 Y. b" X' I5 E
! Z. f; \ G: y& n }
4 p4 Y6 _( q* U5 c; h+ C; q& V2 H/ F2 P/ @5 y$ h
private void swarmSetp() {
5 Q9 P2 @6 ?& Y: a4 n; z list.addLast(new Agent(Id));
3 @0 C- B# q( R4 a* S" V/ t Id++;
& l8 N B5 @2 L a" f' O }
% D: T; Z9 L$ o! D* j+ c
* ~+ C6 l/ L8 j2 @* _) |+ h public Activity activateIn(Swarm context) {
" d4 H0 r( m* W* _ } g+ @ super.activateIn(context);
! Z( O% }6 p; ?* a0 p `: i schedule.activateIn(this);* z/ w+ M' h1 b* C
return getActivity();7 [% f$ W* w. r) h: y
}& k4 Y: f ]2 I
$ s0 L2 s4 q' [ public static void main(String[] args) {0 ^+ w! N) M* Z% T* F! e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% _. s" A9 l* i; i
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 ?9 s# `0 F% \9 K% X" `4 w
swarms.buildObjects();
' C! j9 L2 M# A. f swarms.buildActions();
' ?- a1 w7 u5 _$ s% b! s swarms.activateIn(null).run();/ g5 z/ V2 U$ T1 i4 r% T
}- K4 S; w5 m9 i! `/ @, T7 |
) q- m5 Q8 S3 B7 ^
} |
|