|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& l' b9 A. W; e6 N+ E* R3 f/ R" Y4 M' P. o/ r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 _) F+ j, }9 q4 k0 Z9 d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 _$ B; g T* F0 [& Sswarm.SignatureNotFoundException8 f9 h/ U# @5 N
at swarm.Selector.<init>(Selector.java:76)' |- E& l7 y, L2 A& [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& ?4 t, A8 _6 c! ]( z, u# k at ActionGroupDemo.main(ActionGroupDemo.java:67)9 p- ^' `1 v. C2 Q+ C$ Q+ n4 Y
: \6 L/ D! y P2 `) T( H3 L" S( r1 M- o* v K% }2 j* }0 r: n
import swarm.objectbase.SwarmImpl;
* `0 R0 z: ]' ximport swarm.objectbase.Swarm; c7 I0 Q& D, f1 {4 |1 C
import swarm.activity.ScheduleImpl;; W* N( s9 A F, y
import swarm.activity.Activity;, p& w2 e* F+ a: Z& Z' R
import swarm.activity.ActionGroupImpl;8 h% q% k+ U5 e/ U% d8 g) K, n
import swarm.collections.ListImpl;* ]0 ^8 T0 e* b2 |
import swarm.defobj.Zone; & C/ [! |4 ~% F" J
import swarm.Globals;( ~6 n8 E/ b& K+ N6 z) j
import swarm.Selector;8 g9 w/ W" x7 j/ [6 Q7 s
import swarm.activity.ActionGroup;
6 m8 b* B. T: t! {( W; F' nclass Agent {
6 j% E2 q% @/ P( H- D4 Q/ c* A char id;+ o. D2 g* d$ c! ^6 g) Y. b% b
]. K. @& n! K$ r1 O$ |5 f2 V
Agent(char id) {' n; t: f& d' J' H$ t+ h" W3 t
this.id = id;
0 y' R: F6 |" P# R& u5 i% e }! y* k: q6 y& u. {8 Z4 A9 Z) b
1 h" d: t8 Y' O" N' z( J public void agentStep() {; U4 y1 E9 K/ V! W, ?- q1 H0 P5 T
System.out.println(id + ":" + Globals.env.getCurrentTime()); f8 {$ E' T/ n7 |0 A; r0 p
}4 X' p7 N6 R( ]1 w+ K; i
}6 `* D& _6 T0 [
, a7 j% Q; b' }
public class ActionGroupDemo extends SwarmImpl {
4 h5 `( i& W* n: M ScheduleImpl schedule;
2 D2 J3 r# ]8 q8 K6 a+ u; }) b3 D ActionGroupImpl actionGroup;+ g- B7 E& Z/ q) `1 {4 v
ListImpl list;7 z9 n8 y8 W4 B
char Id = 'a';) i9 X5 Y. p, }5 |8 u3 s
, C1 f* S# X' v/ Z; S- W% G
ActionGroupDemo(Zone aZone) {
7 S! t7 M; s3 B0 a super(aZone);
0 T! v" s q5 O! ~ list = new ListImpl(aZone);- U, T/ W- f; S* L8 j$ |7 n( q
swarmSetp();
/ z0 y- h9 ~, ^( C5 m actionGroup = new ActionGroupImpl(aZone);1 o% X# r" U. k8 n" Y
schedule = new ScheduleImpl(aZone);
n Y/ `% c0 l0 f0 u2 L' r try {$ H: ~3 a) t$ G
Selector agentSel = new Selector(Agent.class, "agentStep", false);. k' v% ]. q9 m" o& c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 `7 @) J+ V0 B$ |, }# y& A
( ^: M h. w3 _ `9 U) { actionGroup.createActionForEach$message(list, agentSel);
1 x3 `) _& c1 `: a J" ` actionGroup.createActionTo$message(this, swarmSel);
' v4 l! _. s# G2 `8 @* \# i8 Q4 \! @ schedule.at$createAction(0, actionGroup);2 S8 H6 K6 J# S9 h" p6 f' ^9 w
schedule.at$createAction(1, actionGroup);7 J1 j& X" Z0 W, E4 S g+ o
schedule.at$createAction(2, actionGroup);9 Y. u/ d9 ^& P; i+ a @8 P" S
4 B6 P4 F* y. a, W9 E
} catch (Exception e) {
" K' z3 z: Z, O; I# h e.printStackTrace(System.err);3 I5 D/ \3 r. p
//System.out.println(e);
0 u' i- d& [( ]/ C System.exit(1);7 B. T# ]' v: R, k$ @
}
$ K4 {' T4 X2 N, X( q. C/ r5 Z$ h( X# _8 o, A8 t5 ~ z- F" ]3 x
1 @ _- I+ |: {5 Z0 F
}: Y- W S5 E- l" ?- a
6 i6 c! a2 B& Y" p$ |
private void swarmSetp() {, O e0 o" E) t- G8 q: |! N
list.addLast(new Agent(Id));% t$ J5 }9 @2 ~
Id++;
9 {8 v7 s4 B3 Y+ G% M }
0 ~" Z" _& u H3 q8 a+ ^- X5 B$ h" H' j
public Activity activateIn(Swarm context) {+ g& z G I. p# Z0 j% f: Q
super.activateIn(context);$ K, }& D% Y) X$ M: T
schedule.activateIn(this);* Y5 ^( ~, P6 E2 J
return getActivity();
& }; \/ g2 D3 U/ U2 [ }
, a, ]/ Y/ C" ^6 x/ P0 u* w `4 e5 u: P$ _" n: p1 P
public static void main(String[] args) {
/ c; C, V% L5 w) k3 X6 j0 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 q9 z& h1 [# n7 _2 q1 p, m3 @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( v7 o3 A$ b4 N2 U swarms.buildObjects();
4 ~, X1 f5 {. a. N4 H swarms.buildActions();- U- I/ t) C* M( Z& Y/ q4 o% {: D- N
swarms.activateIn(null).run();2 B. U9 B% U J4 r
}
1 k9 g7 \* l8 \+ Y" D4 ^( T; S" j v5 ^0 r4 C0 N$ ~
} |
|