|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: i& y' K7 w+ X0 K% n$ M. d ~0 |6 B6 q! D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 u: I0 Q! {$ t$ T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# a* i) q* l7 o
swarm.SignatureNotFoundException
+ u( K% |) g' U" F& J at swarm.Selector.<init>(Selector.java:76)7 H- ?; L% N/ a' o- J; b
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 R, o0 i5 [; E. c* h% m at ActionGroupDemo.main(ActionGroupDemo.java:67)3 [ M9 }- J) X' e" {
. N, N V! e( J8 q3 G; Z8 y: [" L
0 d! N, I- t( i( p/ kimport swarm.objectbase.SwarmImpl;) t( E8 o+ U1 s; ]- N1 H6 p$ q
import swarm.objectbase.Swarm;
. G( g! s$ o, l& T9 Oimport swarm.activity.ScheduleImpl;
; M5 I9 C% `* ]9 u' s" Z0 }import swarm.activity.Activity;
/ g: l' n& O% V' N" `import swarm.activity.ActionGroupImpl;' G7 s f, p, }* t6 _8 D8 S! a
import swarm.collections.ListImpl;; ^# B: D. ~( \+ u" |8 Z
import swarm.defobj.Zone;
/ I/ R! g3 n6 @import swarm.Globals;8 B% [$ }. A1 @
import swarm.Selector;
1 I% q8 [2 C v& K( mimport swarm.activity.ActionGroup; ( O; n) w8 u0 k* L% a5 k
class Agent {
9 M; D5 }" K* o+ K4 t3 s char id;
6 s+ L1 {& O3 V0 f0 e. }! T* u7 g, c' I# ~, d% V5 p
Agent(char id) {; k" o" ?" [6 Y/ J
this.id = id;
* t8 [9 x; Y. F4 s( G( W6 B4 l1 r }, n6 f1 U- n( j, F# U
0 c2 R( |: a. b( `$ k( {
public void agentStep() {
* E/ A% ]2 y7 S1 e System.out.println(id + ":" + Globals.env.getCurrentTime());$ D4 d) z3 }. j7 Y `% x
}
7 |$ @, W {( i& Q. e}/ W2 u2 {7 j7 U5 d
/ I7 E+ s) k# |public class ActionGroupDemo extends SwarmImpl {
\2 v/ q7 s0 v ~7 \$ J* u ScheduleImpl schedule;. M+ ^! O6 w) C3 e
ActionGroupImpl actionGroup;
' [3 z. z9 n% } s; J* Q ListImpl list;
5 P6 A/ W6 u, {% C3 s char Id = 'a';
4 [" O/ E: Y2 U" f, g+ q
0 o$ b# U: m0 c: P5 A) Q& e9 G) ? ActionGroupDemo(Zone aZone) {
6 x, p0 D, y# S5 q super(aZone);
; B7 s ]" e! f; b0 b& f! A+ C7 E list = new ListImpl(aZone);
0 _% Q% r" k& J" @- F: r% v swarmSetp();
5 ? o+ a+ X# v! w2 J9 ^ actionGroup = new ActionGroupImpl(aZone);' D+ V/ [, F( e5 g$ z$ o7 b
schedule = new ScheduleImpl(aZone);' i4 o3 t- ^; i# I' g9 N& [
try {3 h& k: s( R9 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);! M$ X1 T* {: q- ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. w/ L2 j& O% k8 r& ~ . s- m3 |8 n8 @* v
actionGroup.createActionForEach$message(list, agentSel);- `! R9 w. x, L- C
actionGroup.createActionTo$message(this, swarmSel);1 o; P' T) p2 E0 C$ v
schedule.at$createAction(0, actionGroup);' H. |, j2 Z1 L2 [9 ?5 S
schedule.at$createAction(1, actionGroup);
. c: F0 F7 H# b5 \! c schedule.at$createAction(2, actionGroup);
* q$ _) @( N5 K! w" W; C0 |0 r/ [" |) \$ E% p
} catch (Exception e) {; `, }: d9 T# Y5 }% s( R
e.printStackTrace(System.err);
$ W) X0 H# o: d# R8 z1 y2 {# @ //System.out.println(e);/ W4 |8 a3 u! V3 s( H
System.exit(1);
/ h* P& \5 M1 R* _, }' K4 r# c( C }
Q) x7 }0 B: j7 P0 U+ f% P4 V$ \ \3 R8 Z
* g* t2 a* e1 `# ?9 T5 b8 X& f }
# ~6 T5 l/ r# w3 W' C2 j
. ^% N& ~+ Z' v3 V private void swarmSetp() {
. e4 Q& U% j& U+ e list.addLast(new Agent(Id));
9 p# M2 |/ o% u' I& y9 R5 r( B5 u ~( K Id++;
- P0 o$ E. f) \$ o; |' }3 | }
* [8 }* S5 {! s4 [ }8 V/ t% J! C; \0 G0 H" K% r
public Activity activateIn(Swarm context) {. P5 i+ t3 y( d) g7 p! V* ]4 f2 r
super.activateIn(context);0 I: L0 o; S( ?8 [& N& g0 Q
schedule.activateIn(this);
& V6 j) I8 c; @9 S2 x return getActivity();
* D+ ?0 m k8 ~' V3 G# C- H2 o3 Y }$ Y) r7 `! K) ~ T* q. K' Z
; H' c5 c/ q: |
public static void main(String[] args) {; f& l9 Q4 F/ B F" M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, t. _8 B: _1 K4 w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- E9 y+ \" }/ r' a$ k& O swarms.buildObjects();# t% R' [+ C5 s; q- ]" K$ Z- U
swarms.buildActions();
U: ^% A2 m$ M" i$ h* d swarms.activateIn(null).run();' H; H! D7 H- E9 ?2 e% d5 c
}& O; y: S8 _" U/ J2 ?4 O/ Z& z
+ ^! ~ N+ u* G9 `, ^} |
|