|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 z. v+ L; F7 m4 l
6 o) y/ l1 q* t' L6 o' {9 W/ i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: r( }4 o) J( Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: O6 x; T: k" C4 ^) H& g4 Tswarm.SignatureNotFoundException7 G2 _' G6 C$ X/ ^
at swarm.Selector.<init>(Selector.java:76)4 G/ r w7 ~# D. H H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 c8 I* y7 _" t' U0 {& ` Q5 u2 k( g at ActionGroupDemo.main(ActionGroupDemo.java:67)9 v C) X) I n& U5 B
2 G5 ^6 p* K( J( ^' a8 e6 H8 U$ j4 h( N2 T$ s
import swarm.objectbase.SwarmImpl;4 d8 @; R1 s; s( i! ]4 p4 K
import swarm.objectbase.Swarm;% A$ ?/ q$ R' d
import swarm.activity.ScheduleImpl;, r% w! V! ^; T) C* ^6 Y; P9 m
import swarm.activity.Activity;
% e3 S' G1 h% P' R2 @6 uimport swarm.activity.ActionGroupImpl;
7 e+ e! p6 t, g/ s$ b1 ]import swarm.collections.ListImpl;# j$ d Z! D5 [. {: s1 m
import swarm.defobj.Zone;
7 V) J3 B' F. U+ g& himport swarm.Globals;
. }. @/ x* O8 g! @7 L3 i' c5 N Cimport swarm.Selector;
8 z5 l+ ^. i" D- n( o+ ?4 X; T aimport swarm.activity.ActionGroup; 7 B/ u* ^# |. ?$ w2 U
class Agent {. c3 o" a$ L6 H- Q" O
char id;( s: W; s v3 E% x! @% n1 h9 b& k
" K6 Y1 c+ \0 a& N. J Agent(char id) {
; N: {* \6 s+ G# `1 B8 u this.id = id;
1 F0 r9 d* ~1 a7 K; u, A }
% m/ ]; Q8 o7 a$ q: z% r# X* Y3 W. C% |; B8 @
public void agentStep() {
+ A9 ~8 e3 i% M' v System.out.println(id + ":" + Globals.env.getCurrentTime());
. N4 P/ P! j4 v. Q }
' H# P9 P: I% J# D% c}
# G# O2 H9 [) L% C7 _0 } U
4 d3 X) ?, {; Z- J5 _public class ActionGroupDemo extends SwarmImpl {. c& m4 u G+ u$ R$ _ ?. F
ScheduleImpl schedule;9 c" {# @& C. P1 x& U! z
ActionGroupImpl actionGroup;
/ j! [6 `) q2 X7 c# M$ a ListImpl list;! V% V# ?% s. P& e# O
char Id = 'a';; S( w E- O! m( _. c# E
" i: n' B0 T3 B* w L% _% B% r ActionGroupDemo(Zone aZone) {) A6 A* z z3 z9 L
super(aZone);' y/ n$ L! g- U7 j1 B M
list = new ListImpl(aZone);
+ W$ T. V2 r2 F5 l; A1 s t" S swarmSetp();: d" m* V8 ^6 {+ ]2 D
actionGroup = new ActionGroupImpl(aZone);
0 r8 K) R& X# G' _& Z9 B* }6 M: h: R schedule = new ScheduleImpl(aZone);9 F3 R* [8 w. j9 q3 q
try {$ h8 q; B; [! J: `2 d: i' n4 @! h s
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 E+ Z3 Q' K; M0 F' O% q' J0 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: D7 [/ t2 E c5 F" D4 j2 S
' A% N ~+ [8 r0 ]4 s# N actionGroup.createActionForEach$message(list, agentSel);0 Y# ~( E: |) r/ k3 r0 S3 W: Z7 q' D
actionGroup.createActionTo$message(this, swarmSel);
7 Q( L5 P) A) n; Z, \; r: e S) q" i6 r schedule.at$createAction(0, actionGroup);
0 J% n9 q3 O0 e% {- ` schedule.at$createAction(1, actionGroup);& g2 K1 g9 R" I X' G
schedule.at$createAction(2, actionGroup);
$ l; t1 _4 z# E" q# o5 o6 J+ r6 t' Q W! k
} catch (Exception e) {
1 N$ @9 H1 g C/ K% [ e.printStackTrace(System.err);5 y* T; j9 u! q$ z M
//System.out.println(e);
0 R, G6 X9 }( N" l System.exit(1);* }/ u0 M$ @% d( V# p1 H
}* _' m# A' ]* A1 t! L: r
* _" |* y6 a8 ?4 h0 O
/ Q9 F" K; c H4 N. s, f6 g5 ? }
g' m }2 \+ q2 b2 }; f# c( d4 b% X* o/ l
private void swarmSetp() {
( H4 i0 ^0 f/ n list.addLast(new Agent(Id));
) G+ J7 s8 c* l5 r N Id++;( a/ D Q( f' m/ o& k3 U9 |
}3 {! g: F9 A+ E, c
5 x, d0 ]+ o) N: W& `7 j' x2 x
public Activity activateIn(Swarm context) {
0 z$ r% @) t1 D( J( v super.activateIn(context);! A3 t/ J" v; f! T* r7 g
schedule.activateIn(this);
% R8 _+ e5 v( b; F: N' g9 \ return getActivity();# Y5 Q% F6 G+ b
}5 I: X# c m# r
?7 e$ ~7 A. k public static void main(String[] args) {6 Z' X- G `+ E
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# _6 n, W5 V, }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ?8 P2 Q( G W: V* |6 l/ N. x
swarms.buildObjects();, r! T7 F; }$ o- b; x5 n9 P; y
swarms.buildActions();7 U2 y2 d% o, c( R3 g: D
swarms.activateIn(null).run();
- y1 J6 o9 P8 K( Z1 n }( m7 S1 z* b# W6 w% X
$ D5 \, b6 `1 [2 Y |* s} |
|