|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" [& H- q" h- |' Z D' x A, {- d0 W% D K$ i6 |3 o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: L9 v/ C; \) |$ v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' H' n2 K, V9 w' Q; @4 R- ^
swarm.SignatureNotFoundException) N, W) _$ t1 y. {6 }6 ^1 B
at swarm.Selector.<init>(Selector.java:76)4 c- g3 A/ W( L2 J1 i
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 D2 }' B f0 ?" `
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# X8 q! I6 `$ q9 [( M: a" g8 L+ D$ o
5 J) B/ B ~5 ~import swarm.objectbase.SwarmImpl;7 ^0 @. S [$ k, g: x) @3 S6 A
import swarm.objectbase.Swarm;
% {/ H$ x; W9 {) f( Fimport swarm.activity.ScheduleImpl; [& e: k8 y/ a" p( @2 Q2 n& ?
import swarm.activity.Activity;
3 h! {# b; n% w4 l8 L0 v$ ?1 s6 `import swarm.activity.ActionGroupImpl;
0 I* x& R" R" w8 H/ {import swarm.collections.ListImpl;& x" g1 f7 x5 M Z* T+ p$ A
import swarm.defobj.Zone;
9 ]. \6 G* F4 D) Vimport swarm.Globals;2 \- G9 ^, ~6 U6 [0 [. u4 y
import swarm.Selector;- ~ D y4 {7 m* x5 j1 o' F
import swarm.activity.ActionGroup;
; F/ r% Y+ v* O7 J' H) a( y. dclass Agent {* v8 ]4 }+ X8 m, n0 I2 j) |
char id;8 x# V3 k+ V& n( V4 _1 R
% w3 e$ b* h0 x6 s) ?
Agent(char id) {
0 {! O; P$ W# y* S0 [ this.id = id;
1 A* y: H9 B. p; e }$ i7 C7 P& @* P0 J6 C7 M
- V; L, b4 ?6 V! E
public void agentStep() {/ k$ H1 z' `3 N1 P
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 o: j$ \7 W' z% `/ ] }
1 Z; g# I% E8 X0 R}0 R* D$ `* I- a1 H
1 w$ ^! J: B1 u' G8 p
public class ActionGroupDemo extends SwarmImpl {5 j9 e/ s9 u J9 @
ScheduleImpl schedule;7 I8 X5 l2 Q+ W& [3 C
ActionGroupImpl actionGroup;$ f* N' m+ ?( B- p
ListImpl list;
5 W7 I% }# w8 t) t/ D/ _ char Id = 'a';8 ?5 N1 ^& j; E4 ?' d
f0 y. [4 r3 F& Y9 y ActionGroupDemo(Zone aZone) {1 ~+ J1 }" v! t
super(aZone);
$ i$ d7 v9 v; R2 ~ ?, v9 O% j7 U+ Z list = new ListImpl(aZone);% }* u5 q' ~% v. D, b# d0 G1 O
swarmSetp();3 N* U8 D, v+ u8 b
actionGroup = new ActionGroupImpl(aZone);
7 f" \( ]+ D9 e# {" o3 m. z+ M schedule = new ScheduleImpl(aZone);* e% {$ S0 n$ v' P7 m
try {/ k2 m ?( o- u- z I1 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);* N6 v! ~. H/ F W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, I$ F; L; D0 E) {: c( a 4 m0 w0 W6 ]" T, x. C
actionGroup.createActionForEach$message(list, agentSel);4 E8 n$ l/ O# W; ~# r4 Q1 u1 {" g
actionGroup.createActionTo$message(this, swarmSel);
- D2 ^+ p$ n% ?. d4 M, B* _ schedule.at$createAction(0, actionGroup);( A7 s/ _8 a: ]3 l
schedule.at$createAction(1, actionGroup);
^. I$ j3 z8 B5 D) }% t schedule.at$createAction(2, actionGroup);" ?. q" K: H1 ^/ g
2 K" ]& {- X: e. r4 d$ j; b
} catch (Exception e) {
7 |0 p1 J$ x* s" P+ P& A( O5 ? e.printStackTrace(System.err);
+ @3 R# b( H7 Q2 e6 ~* l) S //System.out.println(e);0 v0 t7 t/ W# h
System.exit(1);
$ p; v$ x( u" W, Q5 K7 M6 | }$ A. X+ c G D o9 b& E
- Z2 k& C- H x" q) i' o: Z- b- m9 U; V
}
* H$ z3 _; K9 d' w, q! i
0 Z1 R& F% X4 d8 b" ^, I/ O private void swarmSetp() {; d8 m4 [ H+ H/ G$ H$ p. U
list.addLast(new Agent(Id));$ K# J% t/ Y! c6 |% l) t0 s
Id++;5 g9 k! [& Y0 M) D
}0 f5 g" |2 B. D" i5 j
% a- h+ U$ R% b$ k6 q7 j5 G' f public Activity activateIn(Swarm context) {5 e2 W' I: x" o" r
super.activateIn(context);
\2 l4 R [* [ schedule.activateIn(this);
5 F# {7 Z' k# g1 H L, i' e: e+ ` return getActivity();7 w2 H5 L, b4 ?* X3 M, E+ s
}
L* Z$ o& |$ E" }6 f n; O$ Y! s+ d; a0 k
public static void main(String[] args) {
8 S" t' D; \0 J" }/ J- \2 I. f' S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ B2 p# n, \2 `. v Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# B: p5 W' h! i6 ?: O) h9 J5 V
swarms.buildObjects();, M1 k9 V/ \5 y7 g* M- |
swarms.buildActions();
2 G( F" P Z) ^% b5 H swarms.activateIn(null).run();& a0 Q- f: ]( g v
}
. A* j+ _, a* | E/ ]& t0 C( U2 T
} |
|