|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' B! W7 r$ R5 D) o: T! L3 i' g0 ^% }7 d
* h6 d& j# B# d6 l v5 ?3 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ q' V8 G8 t& _' W3 d, w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: j8 l- u$ k$ Z, _6 @2 R$ G- p( Vswarm.SignatureNotFoundException; w) L! A; J0 D2 k& V" Z
at swarm.Selector.<init>(Selector.java:76)8 J! w- M$ N- w0 o* s9 C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): v* u9 j2 F+ D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
B. Z9 F# M# Y0 r {% u4 r; {. e9 ^( K
; N( P- _# E& G( [1 Y" P
import swarm.objectbase.SwarmImpl;( F5 v8 K/ S4 N( E1 P# W; [
import swarm.objectbase.Swarm;8 m$ k u5 _2 [ Z9 b; j
import swarm.activity.ScheduleImpl;' ^! D# l5 \' @ w* N" c# m
import swarm.activity.Activity;" r2 M) A9 D. }2 l# E2 }& V u/ D
import swarm.activity.ActionGroupImpl;" O; D* j$ u# ?, D& m# ~( b( A
import swarm.collections.ListImpl;+ y! Z2 V: X# g
import swarm.defobj.Zone; . x/ V7 Z/ G! z' |
import swarm.Globals;
- e# Z% c) }, T. a3 z, ?: Y- |import swarm.Selector;2 b. V/ O4 U6 T5 A
import swarm.activity.ActionGroup;
! @/ t, o- h7 i! qclass Agent {
' F8 @* w0 j- z$ q! M" V char id;, N, R/ i* A7 {
: C5 W, z( Q" C9 M Agent(char id) {& n+ T2 ~$ e$ Q" k. u/ a" m+ C
this.id = id;. x) {; W; L, e# _& _% a
}: b2 B, `! C+ o/ \% v
% \6 q' L- b+ R, |- k
public void agentStep() {% v- D( u7 P7 V- g d! D1 _. {! L3 x
System.out.println(id + ":" + Globals.env.getCurrentTime());
" {9 x& M+ T7 {+ e/ {4 X+ u6 e! N }
. T- |! V6 O+ _: ~# h% |}
" n: R9 ?& l& w" G, S4 Y* W6 R( `0 ^; N+ V' D4 a; }: s, ~
public class ActionGroupDemo extends SwarmImpl {
1 v2 x' y7 A! S8 Z7 Y ScheduleImpl schedule;
% k! m0 A/ M! `9 H ActionGroupImpl actionGroup;9 p* M- K2 p9 h: E) k6 S1 D* [
ListImpl list;
- E |8 r- B2 \: p" r char Id = 'a';/ T# G7 p8 U" O b6 G6 @
- x* ?4 F( U, o
ActionGroupDemo(Zone aZone) {$ `) c( ~6 i) \
super(aZone);
3 l/ Z& t3 H I1 m# p& T list = new ListImpl(aZone);6 u; u* }. l4 R
swarmSetp();* |6 }3 n1 ]+ e: c8 l
actionGroup = new ActionGroupImpl(aZone);
2 H# f$ l% j$ k& P! T' U schedule = new ScheduleImpl(aZone);. i, I7 V) X, R2 o. M8 |/ d
try {: r* k# X) P* h! M4 ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);- J- g* {$ g m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 l: \ \/ R4 ^" c( W
) |/ T4 t1 t( B. R# C' F1 W
actionGroup.createActionForEach$message(list, agentSel);
' y& G1 x7 _1 Q6 R actionGroup.createActionTo$message(this, swarmSel);
$ E3 N$ v# s o2 d5 }3 W' y+ k schedule.at$createAction(0, actionGroup);; U5 A% j7 Z G4 F; V. r5 G
schedule.at$createAction(1, actionGroup);
8 u4 d/ x7 x- T e schedule.at$createAction(2, actionGroup);* G+ L5 I7 L1 h6 V
5 b& S# o+ ?, D6 G } catch (Exception e) {
9 Q8 P) I* C6 [% ^$ @/ X; z4 X e.printStackTrace(System.err);9 H' ^, e$ y. ^) _# A
//System.out.println(e);. U! o0 ]& v: [2 U" S; T
System.exit(1);: n3 K* U4 G6 [3 r' |+ U2 [
}, p4 z$ }( L6 p4 N- ^( Q( u
" q+ Y3 t, V; {" E
' X, @; Z1 K+ T* y# j }
) Y0 G- _) C, Y6 [, Q9 ~0 B/ c
5 D1 O# J* }/ r) H+ r private void swarmSetp() {
, [ F/ X: U' e1 c. L list.addLast(new Agent(Id)); ~: W4 g N# X$ j
Id++;
7 e' ]3 P5 m7 `$ |/ Z* | }* \' }0 H- B. j: H; `- i3 \7 F3 h
! a5 D. v; C6 ]2 Y/ o
public Activity activateIn(Swarm context) {: |1 ^- X" [1 f/ d7 q0 s) U
super.activateIn(context);
7 f1 {/ B. I' w3 ~& o& n schedule.activateIn(this);9 s5 K" [' }6 `" @
return getActivity();: g. i# {' {% w( C
}! u7 n" E' O# D+ {2 `5 L' w
+ _4 x' L1 U3 b t1 } public static void main(String[] args) {
w9 {6 Q; R3 v0 m0 B) ^& P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- W1 ?! r+ b' n+ B! H1 i! O% H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* L2 `& f h8 p
swarms.buildObjects();$ y2 k& T- H7 O
swarms.buildActions();% _4 x! [6 Z$ T. U/ p
swarms.activateIn(null).run();
0 t* c. c2 I" F }1 x3 g" y; I% n
/ u$ R3 [9 B2 N9 z' ]9 [; q
} |
|