|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 K1 R" `2 I7 G& H; z
/ I- Z' M R. |1 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ n, Z" F+ y y1 q# [$ Q! K( ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 L9 m# w. a9 \
swarm.SignatureNotFoundException
6 n, j+ ]# P8 x' F at swarm.Selector.<init>(Selector.java:76)9 s, T4 V1 [( S5 @/ T F) Q. P, p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ e- @) v5 Y' }/ _; c: b! G
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 W1 z7 w2 K$ R$ \
; t2 R' k4 M+ b, i7 _% @9 D- a) |( w$ X2 [5 ~4 j, @
import swarm.objectbase.SwarmImpl;% L! p5 j" o3 \5 a& x4 f9 I0 Z" C
import swarm.objectbase.Swarm;5 a$ Y: |* y/ l; |
import swarm.activity.ScheduleImpl;
# T: x; s) R y# K0 Pimport swarm.activity.Activity;% p0 d: k: l; x9 ]" D* g) L
import swarm.activity.ActionGroupImpl;; p# n5 ?1 x2 N- n
import swarm.collections.ListImpl;' k* ?. D6 R5 G" n. P9 V
import swarm.defobj.Zone;
4 o+ V% ^- e3 i [& jimport swarm.Globals;
" T2 _- I# Y6 ~7 ~: f3 dimport swarm.Selector;
$ c4 ]0 S6 s2 U W9 cimport swarm.activity.ActionGroup; ; q, M0 `4 B* ?" ^+ Q
class Agent {
8 ]; |8 e( a, H/ l char id;
8 @. N. n/ i8 B, B* h @' e/ q A$ D/ U2 r6 J+ C4 n. W* T
Agent(char id) {
: S) g) S6 e2 ^ this.id = id;
' t! t. }- N4 V' z% \: E2 A7 s }
% Z' n2 x5 q2 k9 B0 C: }* f
. q4 f/ A8 C! @9 ]( ^5 r public void agentStep() {
/ ^8 g0 m G6 {! T9 D System.out.println(id + ":" + Globals.env.getCurrentTime());1 [$ g/ f" `" ]7 e" J0 i) @
}6 ?. [ w) d8 K- H& r
}
, a% r% B1 n( P) u9 x2 i9 X
5 `/ J: x1 m0 |9 i cpublic class ActionGroupDemo extends SwarmImpl {- G/ ]# N- M! {5 ^3 S# N
ScheduleImpl schedule;* N; E' M2 ?8 Y
ActionGroupImpl actionGroup;1 ]( g! L: i" o! |0 t H
ListImpl list;- _% l \9 s6 ]- ~* D9 U& I- q
char Id = 'a'; \/ E6 W3 n4 V) i, ~' g
# G9 q# ?" y9 O# y; S ActionGroupDemo(Zone aZone) {
% q* ]$ @7 C* L super(aZone);! L, J4 O# ?3 p( w* |# g/ F
list = new ListImpl(aZone);3 Z. O; d7 T- ?7 L8 q5 v
swarmSetp();$ @: g6 a% x! h. ~( S, u
actionGroup = new ActionGroupImpl(aZone);, V% m' F; G2 H/ E# h9 C
schedule = new ScheduleImpl(aZone);
) c4 Z. e: v# }( l4 \/ ], [2 X0 Q( E try {
2 ^! V0 t7 ~. p5 L6 @1 E; t Selector agentSel = new Selector(Agent.class, "agentStep", false);) J& ~$ ?3 c( T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, b! \4 i4 d1 u0 C+ s# u- R1 I
2 X) {9 u, W1 m5 y7 R ?5 e
actionGroup.createActionForEach$message(list, agentSel);
' D3 F9 X/ S/ L( J8 ? actionGroup.createActionTo$message(this, swarmSel);
; J }" p- a; g/ N$ ` schedule.at$createAction(0, actionGroup);1 c# M# I% ]2 g4 L- N
schedule.at$createAction(1, actionGroup);
- a: u+ O2 I' Q$ B' E3 ^ schedule.at$createAction(2, actionGroup);
. f% p' X6 ?9 O$ H6 h9 i% B% S; h1 U# F. i4 N" f W
} catch (Exception e) {/ j; Y- V! f5 W) ?- e
e.printStackTrace(System.err);; e1 I! Y& O7 W
//System.out.println(e);
- M7 F6 a& T3 N System.exit(1);
9 c$ G( i! P* V! M: {- C1 h }0 g$ M/ u! I# ~9 A; c% e' R' J+ [$ }
, Q1 W5 y2 l( T- `2 m+ g: p. J3 t. J' }5 g0 N/ Q
}9 T! R, T2 l6 y. U7 Q* U1 ~ [! @
- H& C3 w, n* ]8 ]4 @ O5 M private void swarmSetp() {& Q1 p# N( j# [$ a6 S+ _
list.addLast(new Agent(Id));
' a4 F2 [" T% }! I. E4 I9 ?" Y Id++;
* {% L: u ]: X# H }1 P9 [( g( T5 U2 Z/ a) k
: |5 [4 B0 b* n* u3 V public Activity activateIn(Swarm context) {
; c+ ]: N% G s& \ {0 C7 l super.activateIn(context);
+ d& {: K6 }$ D- r+ e3 s2 V schedule.activateIn(this);
/ a! ]* @ M) Q6 j3 {4 L return getActivity();
4 E6 n1 E7 I2 d$ G( k }
9 N9 ?' D3 r6 I7 q; }' W2 D/ l/ \0 W0 [1 {0 o4 q' a& G4 h. }
public static void main(String[] args) {. q! P- Z2 i$ G3 t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 ]' S# |. B$ M; d8 y' I2 O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 S7 C$ `" f8 g4 Z swarms.buildObjects();
* E% n/ b) X, l! E! F& g swarms.buildActions();! `+ `0 \$ v {
swarms.activateIn(null).run();; T- T6 O0 Z; }) i" C5 a
}( e2 y3 S7 X! c1 g6 y2 Q- X$ y$ F# v
* ~6 ~ M/ h" `% a' I
} |
|