|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) U/ b$ I) I) W) M) j) r2 x2 c1 ?
9 W: S" i+ v0 y* O* A2 ~: A) a& U5 @2 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' i! I7 d g' d2 z: |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& G, i! c) S, t4 e e- z- ]; u l
swarm.SignatureNotFoundException
' v' w1 m8 m& o0 t" Q. A at swarm.Selector.<init>(Selector.java:76)6 B) `7 t+ n% y5 f4 C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( y# w' }+ ~- a4 t* o! ]0 {: m
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( I4 R) J- t8 i, r
/ g" R& f% Y6 O! e. @# o! n& s) M! f: }' L
import swarm.objectbase.SwarmImpl;+ n3 {4 a% F# f5 ?3 x# ~
import swarm.objectbase.Swarm;7 c; j3 b) h/ ]8 Q$ q
import swarm.activity.ScheduleImpl;
3 [: ^; m* R; h2 S5 dimport swarm.activity.Activity;
& R1 X7 A) W( k" `1 Himport swarm.activity.ActionGroupImpl;
8 T* q0 j' S+ \ k* e' Nimport swarm.collections.ListImpl;- H% c5 W" Q, h8 {
import swarm.defobj.Zone; ) @. I3 D1 N. c" O; b! f/ S7 R
import swarm.Globals;" s6 }+ L5 V! y' y" {5 w5 K+ m$ w
import swarm.Selector;$ c2 \- F4 p* a+ H( |
import swarm.activity.ActionGroup;
r2 B. X, [" w6 N* f$ e( A( E8 O1 `class Agent {
3 v$ |; k. f5 m" x- k$ a& @3 e char id;
6 y3 o2 v( Z' u# ]* k( w# d1 V v5 |: S
Agent(char id) {
% y& t% Q6 t1 [; H# t' N this.id = id;
. ~4 {- g5 R* p# O1 u }2 ?* {) M4 z7 t: U9 k
. P; F7 j3 X2 k7 N# w. | public void agentStep() {
5 S/ Q W* _9 z9 J8 r System.out.println(id + ":" + Globals.env.getCurrentTime());( X' d! J8 F6 S5 T
}: m, E7 I. v, V, _' W! W6 H, _! B
}8 f7 A3 J4 g5 T; R
3 K# | X, o6 s' {2 t3 ?# G
public class ActionGroupDemo extends SwarmImpl {2 E3 z4 p% b0 ?) z
ScheduleImpl schedule;' b9 R2 p" b1 K4 i4 p
ActionGroupImpl actionGroup;
: C. O b1 {+ J5 e) I1 [) Z ListImpl list;
/ n; i9 ^5 Y0 O3 W7 i* k2 j' s char Id = 'a';
: V. m! l; B, @# N% @3 ^& W
# e* H2 g& J, Z( v# P ActionGroupDemo(Zone aZone) {% E7 B4 c% f3 v# C% @2 v
super(aZone);
7 T1 Y3 @! O: x5 ~; k+ T list = new ListImpl(aZone);" E0 D: W& z1 ^: D) W1 J1 q0 C$ j
swarmSetp();
3 _. f1 C! X7 t( _/ s actionGroup = new ActionGroupImpl(aZone);* v& P4 U* r3 n" }
schedule = new ScheduleImpl(aZone);
" z- C: e1 n0 w; a$ q try {
* z3 i* E. e2 r8 d* i2 ~- o+ g Selector agentSel = new Selector(Agent.class, "agentStep", false);
' S) F6 @6 `( a: \' _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. {. x Y6 P: @# D$ N
& O1 ]* h- Q4 f$ `7 ~
actionGroup.createActionForEach$message(list, agentSel);( W! ]/ i0 @2 \4 H1 ^, h% ~
actionGroup.createActionTo$message(this, swarmSel);; F- ^9 M6 m( v+ f, O2 P* H
schedule.at$createAction(0, actionGroup);/ X( H0 e/ B& o+ M' w
schedule.at$createAction(1, actionGroup);
# W) k6 K# T9 ^! f$ S! o1 P& p7 M schedule.at$createAction(2, actionGroup);7 w0 T" N4 T% p8 X+ J; U
, |9 j% a1 }0 R8 l8 c
} catch (Exception e) {6 ~ ?( P- K, ]" x i
e.printStackTrace(System.err);4 F3 b6 a4 `% H% v" d8 _
//System.out.println(e);
! [& N/ c/ C1 N. `% Y& i4 O System.exit(1);4 x0 b# i8 E, \" |
}
' ^6 ^6 P. I0 d4 o z, D) ~5 V8 _" L
' [9 I, U& y, c3 T6 g( A) ?4 r# d5 J( k
}
4 h P. H/ F9 T/ g, g) H, [' F2 A! p5 @
private void swarmSetp() {
: @" P, u' k# d9 L list.addLast(new Agent(Id));
/ r. |& `2 A. H+ E6 z. E4 B Id++;( `- m9 p7 R$ P
}
4 r1 _; K8 Y+ h! ?
" q" o& a- ]& B( e, U/ N" N public Activity activateIn(Swarm context) {
* H- Q4 J$ A. Z+ x, {" Z1 G, M super.activateIn(context);
* B6 y/ `9 {' h6 R$ v, B- } schedule.activateIn(this);
7 M3 m P# ?+ O/ \ s return getActivity();/ e7 l# {, K$ v, t+ `; p( K& B
}- c$ t9 b$ w5 I& _" I0 q3 D/ ~; y0 d
1 n, z* {" b1 n+ u6 v public static void main(String[] args) {; |5 B1 t) ^/ x. m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! H/ V2 M" G, [7 x$ v: v3 s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. }7 A! e7 h8 p swarms.buildObjects();! k7 c( I; s: R2 [
swarms.buildActions();
& }: w3 v0 D& Q- ]) u& M7 O swarms.activateIn(null).run();, d/ a0 k- v: W% d" w- n
}
9 W5 O% p6 E k) F- w) T
1 `" z0 ~( ^% r+ C} |
|