|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ W/ ~1 Q& R% [& W1 V, z* @' R' q% s4 ]& S9 H/ f& M Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' C+ q+ e9 e' \) ~# e1 I8 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& y$ `' l: Q# d# Y+ R3 iswarm.SignatureNotFoundException
* G. m; [# u/ V# I at swarm.Selector.<init>(Selector.java:76)0 n: n+ l' [; n1 u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* @9 Z* I4 b6 I% t ?. v6 H
at ActionGroupDemo.main(ActionGroupDemo.java:67). x* g# Y$ R0 J' S0 Q7 r
% I5 \4 T( c! F3 c# h- `9 |$ ^" j2 i! B: `
import swarm.objectbase.SwarmImpl;
e {" a" `- D) I" W1 t' `9 vimport swarm.objectbase.Swarm;( [ Z! v/ W1 _0 I
import swarm.activity.ScheduleImpl;2 O9 ?& q$ L9 ]: O
import swarm.activity.Activity;
9 M8 n( O+ `( M2 limport swarm.activity.ActionGroupImpl;
# W) ^0 k: s$ d4 T9 I6 E0 ~* h! j) N) himport swarm.collections.ListImpl;6 V( |! a: |2 D% W% k
import swarm.defobj.Zone; & h) N: @8 q$ L2 c2 ^
import swarm.Globals;
7 H6 w# g& Q* t1 Y" ?/ ?import swarm.Selector;
% o9 F" @# @: r0 Himport swarm.activity.ActionGroup; , B, B' ]8 v. o$ L/ e- o+ q% |9 Q
class Agent {
) k3 J$ R6 P; g+ }' _1 [. m char id;
+ n$ y) |' Y# \& Z* r/ C& T4 H8 y/ g5 ?0 O- T2 b% ~! {
Agent(char id) {
' t( Z0 s3 P# E% I this.id = id;" g2 W/ r" L3 H" X8 ]; T- k2 D& D
}8 N1 Q: w( C. D4 u- s- n
2 X" A6 B3 h6 C! M public void agentStep() {: _" U, b' I* S
System.out.println(id + ":" + Globals.env.getCurrentTime());+ }3 _9 p. [4 k- _" U- v. X
}
' X8 Y: ?! [; h( @6 }$ F, P" h* T}
' H# ~! U7 a5 l7 e5 T" A0 D: c* C c* [0 L- k: [) P
public class ActionGroupDemo extends SwarmImpl {* K$ W. Y& B5 C5 X' w0 ^5 {' {
ScheduleImpl schedule;6 R$ H; v8 ]/ ^! V4 M2 A
ActionGroupImpl actionGroup; T4 }( z5 ^ t; C. @/ V4 ~
ListImpl list;
/ _. n+ n( }, q9 ?9 \ char Id = 'a';
0 K1 D* @* c5 s; |( q+ P2 H
4 c6 B+ e: m, u% b- _6 z* C ActionGroupDemo(Zone aZone) {
4 y5 T5 ]) J+ `# Q" i super(aZone);1 \0 p/ Y" v- v4 k' D% v+ [1 _
list = new ListImpl(aZone);
. n# R* i" x/ k. t( U swarmSetp();
8 o2 x: N- q9 L actionGroup = new ActionGroupImpl(aZone);: Q' x' K$ N7 r
schedule = new ScheduleImpl(aZone);, F B9 u/ M( I+ w- c
try {
% \8 x4 r9 B& a2 r# v7 [0 j Selector agentSel = new Selector(Agent.class, "agentStep", false);) v A2 g- s0 k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* T( I2 S9 e8 y + e# A: s7 m; P8 x7 q7 |/ G( X) ?/ |/ Y
actionGroup.createActionForEach$message(list, agentSel);9 _0 |" _4 s9 g+ b; q. P2 N2 W
actionGroup.createActionTo$message(this, swarmSel);
( e2 `1 n# I& w3 a% J8 n4 S schedule.at$createAction(0, actionGroup);
3 K5 q: E# i, U. S* A1 R schedule.at$createAction(1, actionGroup);4 u# q$ e' Z- f" J8 y
schedule.at$createAction(2, actionGroup);. r6 c+ W _3 c, i/ C& G' n
, K3 P, U% k0 j
} catch (Exception e) {+ I* P; M ]" M5 {% V/ S2 u
e.printStackTrace(System.err);
) d: s5 X5 w9 W- e9 t //System.out.println(e);; P. B9 c W3 t+ q/ w& _
System.exit(1);
+ t; d! {) O" r/ ^4 q+ Y }2 N" ?" f) u1 z( y
' h* U: g( p: l5 ?* h- X6 Z, {
4 H' e( ?. M- X }' c$ _( H* v+ W) [: k. k. o
M/ |/ @- S+ U+ q" v& k6 k
private void swarmSetp() {
# I4 ]* G, e& ~1 l* B' ? list.addLast(new Agent(Id));" {0 C6 v I6 U6 @" ]0 C ~& Q$ R
Id++;
& \* d: @5 r3 D* }4 {( l }
7 d- g! p* [7 Q2 `( T
6 g$ j' {& _" F2 ^) f r public Activity activateIn(Swarm context) {
5 Q7 ~: w$ B6 ]6 v* x super.activateIn(context);
6 d: `5 t5 y" X7 Z$ T/ a/ e schedule.activateIn(this);
/ i- w/ x7 `- B' o/ m7 q3 G: D return getActivity();- @; s, Y! m/ p1 }' t% T a
}
9 N% ^ V- b7 L
2 o; z$ v2 [2 t: I1 y8 \! q1 ]: O( } public static void main(String[] args) {
4 L6 Q, [/ r* `- n f; Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. R) S# A9 {4 }! m, z/ A, X Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& D' X4 M U+ j8 I$ w8 V( Y2 Z! y
swarms.buildObjects();$ v% S4 ~' F1 X f8 N- K1 _9 E) B% q
swarms.buildActions();7 ^: W, c9 }! ?8 ~: N2 P
swarms.activateIn(null).run();/ j, _" r8 w E, t
}
7 i0 Z2 d/ }) G0 o: v& @3 |$ g$ k: c2 [0 R/ m$ k/ n
} |
|