|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Q) @ C, T% ?" g
9 z# ?4 O& P C. D- O- u. R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" g; x+ Z. ]+ H6 u9 K$ }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ ^6 L9 u2 q% j; O- |swarm.SignatureNotFoundException
$ E( r( d" {( F9 J* @) _. [ at swarm.Selector.<init>(Selector.java:76)" E9 b+ Z) a/ v8 B! y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( ]. }0 K; [7 _4 Y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- J; {9 y4 J% k) H4 F& `0 k' ]1 z& ~! |: R0 Z ]% i0 y3 O
3 l! Z I& q( G; S/ ^( L5 P
import swarm.objectbase.SwarmImpl;
' C6 c D" w7 R# R# Y% v' G8 Aimport swarm.objectbase.Swarm;# M' j% D1 F( f3 p Q5 d
import swarm.activity.ScheduleImpl;" O5 y7 _- Z) J- V& y
import swarm.activity.Activity;
1 e) s# r, m2 Pimport swarm.activity.ActionGroupImpl;2 {6 _5 ?) t3 Y7 B6 C! ^/ q
import swarm.collections.ListImpl;/ q3 [5 @1 ^5 [; h1 {
import swarm.defobj.Zone;
U7 p6 b' W, _( q, J1 ~8 Y- y3 I7 zimport swarm.Globals;# l" Y" L/ u* J. D+ i3 P/ M
import swarm.Selector;# f \/ c, `3 ^! k, C. Y( _7 M' g
import swarm.activity.ActionGroup; " k8 E* ]' G, {7 \5 Y c
class Agent {' @& F! s ~2 j. |2 d
char id;
+ g+ M9 Y, L; i7 Y
9 A: f8 ]; I) O! o6 H4 } Agent(char id) {
, Z* U- x: {2 E# ~$ B this.id = id;
0 w7 B+ ]- C6 n# Z: l }
; ]! n5 ]% [# p1 M/ P4 k7 O! k6 F
3 v7 x. c/ j" @- k public void agentStep() {
9 E8 @! {1 R' {% J& h System.out.println(id + ":" + Globals.env.getCurrentTime());
+ b9 X* b- ^& F2 |' u% M2 T }. M; m) ?: }& l5 y, E
}0 B: l) f/ X$ L: q% @( B5 D
% U8 \! p% J% B# t j( k4 s/ U
public class ActionGroupDemo extends SwarmImpl {7 Q0 c$ y3 T$ L1 [
ScheduleImpl schedule;
8 p# Q" W+ U* a' R0 D ActionGroupImpl actionGroup;
4 K) f% Q N C, d, u$ `9 G ListImpl list;
# X6 O$ p/ R! b( N char Id = 'a';6 e6 j" b* ?* ]9 y5 }8 Z& `
# N* |' o3 n1 D" _ m
ActionGroupDemo(Zone aZone) {
% `8 [2 N6 M' n4 D# c4 ~" e super(aZone);
5 ^& @* E# t& m list = new ListImpl(aZone);
; g9 t0 K) O+ A! i) e0 ]0 ^: b swarmSetp();8 h- `; T: J6 G' _8 A
actionGroup = new ActionGroupImpl(aZone);4 w. X. } \; B c
schedule = new ScheduleImpl(aZone);
& U8 l: L+ k1 R" `9 q try {+ Q2 E/ q# d' N& M* P
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) L) C) S3 o! e: R w; s }& \8 d Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 }) M' k0 S6 C" ?: [) I ! j7 }! ]% d, B$ \& {" G# A
actionGroup.createActionForEach$message(list, agentSel);+ U( a& ]& u- o" Q
actionGroup.createActionTo$message(this, swarmSel);/ ?. q) ~, B1 u& @( v+ i
schedule.at$createAction(0, actionGroup);/ n& i0 W2 S2 b1 q: S/ e0 H
schedule.at$createAction(1, actionGroup);3 b7 L( [4 w) ~% p& w: |
schedule.at$createAction(2, actionGroup);
9 y# j9 k+ f$ N" t* B
) a; s. o$ q/ J7 v } catch (Exception e) {9 L9 S" o" Y3 E) ?
e.printStackTrace(System.err);! |, m: E8 e9 s, b- }0 U6 x2 J
//System.out.println(e);, ?$ c; c+ B7 [7 R8 I: c
System.exit(1);' o# }7 f5 ]. Q% z, M% h3 O
}
3 q7 ]& o& m' A: X5 m" u3 z% T3 [6 y3 W/ L% B0 i
/ A. ?2 ]% b& j3 Q9 m }
1 `; Y$ ?# `1 k' m; [9 L! d0 ?' [3 L5 K0 }4 ~# v: G+ a
private void swarmSetp() {
' z) c* e1 S$ }. H e& g, J( Z9 p2 b list.addLast(new Agent(Id));, ]+ M. m+ c) ^+ K( a
Id++;
! ^# |) w# ^8 w( C }
4 t P3 D& z: ~8 E8 {$ g$ X2 w0 `" p& V& S9 m! X
public Activity activateIn(Swarm context) {
+ p& n( R. K2 v0 J: |( S Z super.activateIn(context);
# R9 N' W" _: O9 X, q5 x+ a; p schedule.activateIn(this);
1 E" `4 A2 j1 o/ ^& E" Q6 ^ return getActivity();8 I* I& H4 ^+ N
}
J1 K" X8 u: T* e/ t* c& F+ Y: m5 A4 {
public static void main(String[] args) {
. p; j6 i$ l7 N& S# }% h ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 q! X3 h& H2 I4 O9 t' Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# ~$ `! |, [ I! s; W swarms.buildObjects();
2 x( i' A; y1 a- \( I swarms.buildActions();
$ v" ]: S: W+ p/ v- r2 T0 Q swarms.activateIn(null).run();
6 f9 ~ U4 Q$ F }
R5 h! P( F7 ^" `2 V
# S H% {( e4 q9 B( ^# x1 f} |
|