|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* b8 ~& h" u; {0 h" n; O# j; V+ g5 i& j3 I& H5 a" D# u8 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 s/ r' i$ h/ F) A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 w* B1 @. P9 t, Z
swarm.SignatureNotFoundException
' ~3 r! N7 Y) O at swarm.Selector.<init>(Selector.java:76)4 B$ ~; r0 n' p7 o- G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 y. W }/ b( ]9 x* D at ActionGroupDemo.main(ActionGroupDemo.java:67)* l0 {2 W1 d6 I" \1 ?8 c- C
7 c% A# b$ V$ ?# v7 @) u! M7 h. A9 ]
import swarm.objectbase.SwarmImpl;
8 c) Y" Q& l" b% q5 r* i, qimport swarm.objectbase.Swarm;
- a# X- c, A$ u( K2 H+ oimport swarm.activity.ScheduleImpl;" @, p: Q, F1 e3 w' P
import swarm.activity.Activity;
& I" o5 @ d( r! U' f3 v( Himport swarm.activity.ActionGroupImpl;
( W9 ?* K. H0 |4 h7 N5 p0 mimport swarm.collections.ListImpl;1 ^* k. W6 s$ I: @- T7 m9 S
import swarm.defobj.Zone;
% ^* J9 g0 i! {6 B1 vimport swarm.Globals;
3 e3 c8 D& \* |6 v" Pimport swarm.Selector;
( N. B+ M- w' e limport swarm.activity.ActionGroup; & i% B4 L- z& |+ H
class Agent {4 i* s0 K% G" s8 F, y) s
char id;
0 s7 y! Q. o* \5 q" T0 W0 W( j( c
& z* `8 V5 W! P2 L) K0 ` Agent(char id) {
0 T' P+ J' t4 b% X. }9 w- C# J this.id = id;/ K W, N, Y6 S% D
}3 L ^0 ?* [5 O4 s. [# s1 ]
) H( i# y) A n9 Q public void agentStep() {% J, {* m: Z6 s. O+ @7 C; P. P s
System.out.println(id + ":" + Globals.env.getCurrentTime());
* z0 N% y0 {- ~& g }
2 ^0 ]/ \* q( z}# k- @. ~! B- M- G
/ Q! [- W; C1 r& x8 G% Kpublic class ActionGroupDemo extends SwarmImpl {3 d$ o/ }& u: P. r/ \
ScheduleImpl schedule;
; @1 e. G" k' R0 M, V S! I+ U ActionGroupImpl actionGroup;- u; i! L3 j3 Y: T0 r7 t1 u
ListImpl list;
' K S$ R# v; V3 N7 l' a+ i char Id = 'a';% @, Y. j8 N B( S/ g
) A5 K8 H2 x. Q' O9 z1 Q' U ActionGroupDemo(Zone aZone) {/ D4 p( ~& h5 I
super(aZone);6 s. h8 U A1 K3 t! W
list = new ListImpl(aZone);5 [9 M- t' {- e- q8 J" A; O# Y. n- c8 v
swarmSetp();
" a6 ]' l; d) b; C7 k" a actionGroup = new ActionGroupImpl(aZone);
, V( t0 T, S3 @" o, y# K. y schedule = new ScheduleImpl(aZone);! d5 F# F# |6 \4 q- j! f8 b x
try {' F9 b( i; `& \6 Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);. l h. l0 N4 Z: q% @' A3 S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( _/ C& |% Z6 g! K/ A/ b
]7 q6 }* p3 N8 A$ F actionGroup.createActionForEach$message(list, agentSel);
; ?0 U2 D0 G9 f A/ Z! Y+ Y1 { actionGroup.createActionTo$message(this, swarmSel);* ?, T3 s' `8 K. S1 T
schedule.at$createAction(0, actionGroup);. D/ ^$ u3 c: D* S
schedule.at$createAction(1, actionGroup);2 j3 {" `6 Z4 u. |, F- D
schedule.at$createAction(2, actionGroup);
* f- ^, @' _; p* z/ c% H
4 Q" N8 C! E2 b q& n2 S0 n } catch (Exception e) {
3 e1 u( K' |8 ~ e.printStackTrace(System.err);
: K$ Z- _$ w' P* }3 T0 V: A/ H //System.out.println(e);
; \: F. L7 T) S1 B& C, Z System.exit(1);% o" C) n- n! K4 A0 `& s
}- A. U8 t# l3 y5 X' _
. }! U2 }1 k, k" G
" T% d0 c" m" _! Q3 P0 |
}
, V3 _7 F, [2 l1 b, `7 t9 u2 G+ c3 z f" U: j
private void swarmSetp() {/ Z m7 w' {$ g5 S2 L9 S
list.addLast(new Agent(Id));+ I ]( T& H% \* m* |
Id++;6 L# @0 }" h2 u% _5 e" S, e+ E
}( ^, `& C9 ~& S* a+ x) D9 R
5 F# D& ^6 h0 I& A: }7 h public Activity activateIn(Swarm context) {
% [$ E( N& _# C. s& B/ d1 W$ j super.activateIn(context);+ L8 l9 h4 j+ e- v9 F9 c
schedule.activateIn(this);0 ^. q/ X3 @! X( ~3 b" z/ A5 n
return getActivity();
5 ~# u0 D# e+ h/ y- D4 p }
' R1 B. u% Y! \/ M1 `) F& B8 @9 Y4 a2 _
public static void main(String[] args) {
0 C0 ^8 F1 ~, x! m+ H9 L1 E% h2 U# C Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 D0 [% L: c3 S `- e, o3 j8 A) Q, C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ g- c& l8 l; Y3 m* d7 W swarms.buildObjects();: F/ k% q }7 }4 \1 O p' J
swarms.buildActions();' C% V9 h) Y! S
swarms.activateIn(null).run();# f8 M, |% f: H9 N
}2 u6 U/ O# G9 D
6 l5 B$ ^2 Z. `0 b( i) [' G
} |
|