|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 \* w. q% n% w8 }/ } H4 s. w5 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' m2 W3 m* w. ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 p% R, j4 f; {7 [1 |swarm.SignatureNotFoundException
# J) }7 q& F# o0 v at swarm.Selector.<init>(Selector.java:76)
: d" y4 f7 {# N3 H- D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# t% ]' u- p4 U- e! T
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# M# y+ w$ \3 a1 r$ n8 ^; n/ x, |. ^6 R4 _* D
3 M0 V4 b7 h0 `. T! z# `% Q$ V8 y
import swarm.objectbase.SwarmImpl;
, e$ f0 P' q2 m4 r% M- m, Zimport swarm.objectbase.Swarm;4 Y' z* J2 N' z+ V
import swarm.activity.ScheduleImpl;
7 P" T2 {" C* Y4 o: G3 F2 A* Uimport swarm.activity.Activity;; ~% Q: ~& k4 r
import swarm.activity.ActionGroupImpl;
. D. @) \6 _0 C: Uimport swarm.collections.ListImpl;
, F) b7 ~6 W9 K+ B# Rimport swarm.defobj.Zone;
0 w# X" W4 o" \. Y" I* |import swarm.Globals;
/ s& S) G6 `; \, Z2 I4 ]import swarm.Selector;
; C3 g& S! z9 [6 G$ H5 \import swarm.activity.ActionGroup; / ^ k3 p2 j; e: X* {; E- t
class Agent {
& M# r! Z. z; Q% a char id;5 X; f3 ~7 A1 Q# X6 N, z
3 u2 d/ i7 U$ Q6 ^ Agent(char id) {
; O: I8 @+ Y: U" j' d; d this.id = id;. ?9 ?8 _# I6 ?6 d% H
}
7 q& _" N8 H) D$ v- i$ P% h
8 B8 d9 O% N. Z) h& K0 @ public void agentStep() {3 y# B% r7 _2 X" ~
System.out.println(id + ":" + Globals.env.getCurrentTime());" J$ @5 H, R( d6 i
}" }' r# z* C" Y. E" f
}; m; z E3 I; Z- z& E0 B4 I% Q
) y7 K7 H' W4 ~! u( v- Rpublic class ActionGroupDemo extends SwarmImpl {
# Y4 {; _: u$ H# c ScheduleImpl schedule;
6 U' [- ^2 o/ s: X/ N. I" A ActionGroupImpl actionGroup;4 g9 J; g& W$ V2 k# V+ k- _. y, h
ListImpl list;+ L/ Q9 X. Q& j/ r0 b0 a
char Id = 'a';7 X! L2 J# S0 B: n( \% T0 B
' M9 Y; s9 s* |3 B ActionGroupDemo(Zone aZone) {
8 q% ]/ g- l7 `4 j) V super(aZone);
% V5 h6 d0 E, t* x: E# i list = new ListImpl(aZone);/ x5 H. q0 f3 E( p
swarmSetp();
) _3 R+ _5 E3 A- _ actionGroup = new ActionGroupImpl(aZone);
6 S; Q* E5 H" U' H schedule = new ScheduleImpl(aZone);9 y( J8 k F$ ]1 Y& e( N1 a2 X5 M: ?
try {
6 b4 ?" B1 K# Y3 p) n5 I+ N) d Selector agentSel = new Selector(Agent.class, "agentStep", false);7 p4 ~& s) a0 m1 G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 w0 r% h* T% B6 Y( A6 o2 i+ V
' M* l0 T8 g; } r% i# d actionGroup.createActionForEach$message(list, agentSel);
0 Y) b: f: N$ o1 X8 T1 S; q' e' [ b actionGroup.createActionTo$message(this, swarmSel);
: p" P& |; G' }- s& R) ^ D9 t1 W" e schedule.at$createAction(0, actionGroup);
F8 u7 {" A: L6 K; S schedule.at$createAction(1, actionGroup);( J' W) q9 o- z1 y9 S* B
schedule.at$createAction(2, actionGroup);9 c _; D: @: M2 p4 s% g
) }" p v# |# w' z } catch (Exception e) {- M& q! y6 T- `3 a& x) X4 `
e.printStackTrace(System.err);2 N' K g! N. m. d
//System.out.println(e);
8 S$ \( S0 r$ x6 L& c2 W: \ System.exit(1);- o% I( J3 x# p6 o& U, Y u, x
}% }9 _6 e0 V G2 u" E$ ]5 R
, ?* E% o, [' g; [, T, s5 k0 c$ s6 S7 F
}
7 E6 P1 }5 J/ \- R! A! p
' R' e* s M& ?! D private void swarmSetp() {2 [: C6 d7 S# L7 ~( E4 y% q
list.addLast(new Agent(Id));6 J1 r8 P& b( |" S
Id++;
7 ?( e# g' Q/ ]; `5 S- G+ e }
8 i+ S! O2 G8 Q3 p' T& V& Z# H! w$ x# x
public Activity activateIn(Swarm context) {
5 G% k9 z& u: l9 ` super.activateIn(context);
2 |+ y! E' `' A# y' G5 n schedule.activateIn(this);
* l8 v( S( p1 `6 v' H2 m T return getActivity();5 ]0 X, g' Z e2 {$ g) J) y
}( g5 R# M' ?' M6 x1 U2 Z! {
* B4 _7 J+ v* B7 h public static void main(String[] args) {+ d8 ^7 Q& W$ r$ M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! v; G: t# @$ X" S/ Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 U; Z* C2 ], P Z, d swarms.buildObjects();
' T* F$ m, C+ x swarms.buildActions();+ U) L, r& R0 t2 |$ f) o+ L
swarms.activateIn(null).run();
* N0 y* H9 l& d- H }
% j+ T6 K+ ^$ J6 x1 m+ m
8 I' `% S/ }# E6 ^3 n4 \6 `0 h2 ~- s} |
|