|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 T# n! W8 V# a
( F6 T, C ?6 e% Q3 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( \' X7 Q' g% F$ N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 U; T3 g; F2 B- i; ^7 l
swarm.SignatureNotFoundException
# \5 [% R) t! X" `& c) X) h. r! u' p at swarm.Selector.<init>(Selector.java:76)7 G6 g' E+ m' d; G: G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ X- j6 |( l7 h8 j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
" |! `; [/ `% e$ c7 [% C8 l' P9 H
3 N- _ r# i* `6 q) fimport swarm.objectbase.SwarmImpl;
; N/ R( C; u2 K, X4 Mimport swarm.objectbase.Swarm;
, @& ] q2 k& l( I$ N& L! B) Bimport swarm.activity.ScheduleImpl;9 q4 R2 }2 M1 c' |( f
import swarm.activity.Activity;$ x1 d9 S6 C; _6 b( V3 P
import swarm.activity.ActionGroupImpl;- |. @7 N0 r' j2 h
import swarm.collections.ListImpl;
; ]. [% o6 y9 x+ ~, O2 E0 d/ ]import swarm.defobj.Zone;
: F- Q% i" \' O+ Oimport swarm.Globals;, V$ F n3 i, Z n# ?6 n% \
import swarm.Selector;
* B; Z3 B! U" |1 cimport swarm.activity.ActionGroup;
" y, B) d4 I# M H; c" B0 rclass Agent {- K, Y. a' a4 w4 }4 N; d
char id; R- u: x* a: K1 G- H) b) l- c5 H/ m- i
* g0 ~) `: @: j# k/ s9 {
Agent(char id) {
D! ?4 r8 T8 ?# C7 t$ |2 L) f this.id = id;
( M" B: V7 j" S$ r1 C" \ }
9 y# H5 D! I% [+ A, S! o. {! q2 s- @/ K3 W2 ^ `
public void agentStep() {* z! v7 j4 N7 n. M% _3 c
System.out.println(id + ":" + Globals.env.getCurrentTime());8 f8 Y6 ~8 n8 G) N) p6 c
}2 u, W0 S$ x8 w; l$ g1 r
}
7 |; j* y2 r2 D7 c# Z2 U
- s! K2 n: K. j( Ppublic class ActionGroupDemo extends SwarmImpl {
# F2 U' w6 |- j2 [# i: } ScheduleImpl schedule;
, L9 {# _* z+ W ActionGroupImpl actionGroup;
; P! U# V+ `$ g+ u2 g0 R ListImpl list;
$ g O! {( g" ^ char Id = 'a';
4 {5 X' j7 d l$ h
. o' H1 _- X# [$ Q3 M' x ActionGroupDemo(Zone aZone) {! r* j0 U/ ^8 a; T3 r
super(aZone);
: @! j6 @5 q$ e6 c6 Q1 s list = new ListImpl(aZone);1 a/ W5 Y, u9 C% j! a& W" x) m5 L
swarmSetp();
( x# D2 z, N5 ]+ u. l$ L actionGroup = new ActionGroupImpl(aZone);4 o0 D6 b3 N5 k& z
schedule = new ScheduleImpl(aZone);/ }! c, i" N9 U4 ?/ w g3 h
try {
2 d) x8 x/ }- \, a6 T+ H" v Selector agentSel = new Selector(Agent.class, "agentStep", false);/ P/ B% Y' F2 X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. E2 w. a. b/ D( f; M9 n
; W$ G8 R( M7 j5 d actionGroup.createActionForEach$message(list, agentSel);
% q( u" h0 Q! n6 [, X actionGroup.createActionTo$message(this, swarmSel); I1 c' ~9 e0 @, e
schedule.at$createAction(0, actionGroup);# g' b, q( N% |3 h" G2 t
schedule.at$createAction(1, actionGroup);
/ A& P5 h. f# q) _0 D schedule.at$createAction(2, actionGroup);
. S! a% i7 k- A5 x; N* Z* i3 x8 H8 u" N/ {5 w) s) J) a
} catch (Exception e) {, i% x' ~; c& j, ]. P
e.printStackTrace(System.err);( E( G* |' U* t# K
//System.out.println(e);
1 l' B. E! `6 T) S' c# _ System.exit(1);
# P* `" z2 [1 j) E1 Q k }
- q! K7 ?. o: X7 J2 L! H5 b' [- \7 Q, o
T) o3 g# ], v }
! q+ n' y* ~. J! |6 K' e7 e0 b, _( D" O: F
private void swarmSetp() {
, ^0 S# T) X2 P- a+ M list.addLast(new Agent(Id));
! H' b& F; e6 T+ z+ \ Id++;
A) \3 b* V+ p% Z }
( M/ q t) |9 G$ _' r/ x) |
* q, r$ H) e d$ z7 d public Activity activateIn(Swarm context) {; t6 U) g6 d; Q: H9 i6 B
super.activateIn(context);
5 v4 W0 }# u7 E: m* T' X# w schedule.activateIn(this);
3 u' n1 `$ Y1 w! \' R8 X- m return getActivity();8 `9 _' W% |3 z2 S0 p7 A9 I4 Z
} @) M+ H$ w+ t, D
4 o/ x0 m% _& B+ q' {, ?2 g
public static void main(String[] args) { R& J( v( n5 e% w9 F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( O @8 u/ Z; i+ z* \& j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) W2 I! Z& ]: Y- O swarms.buildObjects();
- a+ g" {! O3 a/ T0 S swarms.buildActions();: X. `3 Y; R8 r$ l
swarms.activateIn(null).run();
3 l4 N9 t2 K: h4 l. Z1 A }
]& U$ w6 N9 i# N+ e% A, C
$ g; |+ l# Q, B% I) T) D& T/ G} |
|