|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 N, h7 T% v, W3 w2 w
; W" Z/ U7 l+ ^ g9 J& |; v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: C/ }' }$ {8 g( o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
H3 u9 }" }& Rswarm.SignatureNotFoundException
2 B! _+ M/ ]$ ?' a% t- t: O at swarm.Selector.<init>(Selector.java:76)5 ~1 ~; ^0 s) U6 Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( E5 S. y+ n: \+ ~7 ] T; [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 R) G D! T6 |: }/ [* O
8 H# [% ?* H8 p
p$ I% ^! w h4 @import swarm.objectbase.SwarmImpl;0 }5 W" n) ~- C3 G. S% X. L
import swarm.objectbase.Swarm;
l, A/ C- X; ~3 \import swarm.activity.ScheduleImpl;0 k& E; Z3 J8 F0 B; {2 I0 ^7 K$ ^
import swarm.activity.Activity;
; }/ F6 r* a! y5 D$ Wimport swarm.activity.ActionGroupImpl;% J% ~: Y9 Q3 O, |8 }' q, f
import swarm.collections.ListImpl;- s5 ~; E) q c9 ]
import swarm.defobj.Zone;
" i# K) y) ~9 yimport swarm.Globals;
. X5 g! |+ I3 r$ }3 u6 c' Nimport swarm.Selector;2 Q- i/ c# v/ O; r! e
import swarm.activity.ActionGroup;
4 @& r) r" [6 O* n) ]class Agent {, j# u# g6 ]$ w. n+ S# V
char id;* `/ M" R# X& b( K
1 } F0 [8 W# S( X( i y
Agent(char id) {
5 y( g% d n# m$ V" m this.id = id;
% a/ X/ z6 p9 J7 a: Y/ ? } D2 b! `+ p' D& V& w" S* M
8 w5 M( D+ A, z; w" n
public void agentStep() {
# o. ?3 y2 w$ Q' s1 {2 d7 a/ T5 ^ System.out.println(id + ":" + Globals.env.getCurrentTime());9 U& }! P0 d. R1 _( z* l1 T, X: d% h
}+ P! P' j9 p; t3 ^2 i+ H1 H, Z1 W8 B6 }
}" q; A8 i h9 j4 p% H6 A
# l6 N. W; p: f. l' m
public class ActionGroupDemo extends SwarmImpl {
4 q2 q8 k# W% N+ l8 m ScheduleImpl schedule;$ u4 z$ J4 w& l
ActionGroupImpl actionGroup;$ Q* i" n/ Q9 U: \3 u9 a
ListImpl list;
6 J+ ^8 K5 k6 w4 w; |" k7 F char Id = 'a';
8 l. [1 g0 t* }% s% x. x3 i7 H5 ]+ ?3 n n ]" S! n7 h
ActionGroupDemo(Zone aZone) {
0 S. h3 X% @* Z. Y1 i7 O3 j1 H super(aZone);
2 c- t' U" g4 Y% o$ b list = new ListImpl(aZone);! f# A+ a$ b4 h! s! t9 F% k+ J6 J
swarmSetp();
9 N0 x& f3 ?6 h actionGroup = new ActionGroupImpl(aZone);% u( q2 P% [' v" l
schedule = new ScheduleImpl(aZone);& J: o$ \* u0 m+ i% F
try {
' e) X) g9 n+ M- h5 w Selector agentSel = new Selector(Agent.class, "agentStep", false);7 x1 s0 `/ T# w+ D& V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& @" A( @ V7 d5 |# ?' K5 b# h9 R7 [
. B8 F: f* R' J! e actionGroup.createActionForEach$message(list, agentSel);
' ?& N6 b# R" t" n1 f( s9 D |' @7 ? actionGroup.createActionTo$message(this, swarmSel);
7 T) n2 y# O1 ~8 j* y" K0 I schedule.at$createAction(0, actionGroup);
$ P# s$ i2 k, p7 [ schedule.at$createAction(1, actionGroup);* Z; |" Q/ c6 |. [
schedule.at$createAction(2, actionGroup);! r, Y! W' j$ S6 q. s; X7 _
* f6 k8 F9 R: C
} catch (Exception e) {: y) `2 d d: I7 ~% Z
e.printStackTrace(System.err);. `5 E h# U# G7 H
//System.out.println(e);
3 h, a9 Z$ }- v! Y System.exit(1);
# S2 n. ?! E. @( o: P7 b% W6 W }
! E. a' ^6 m( n$ o7 ]6 s
( B' s+ \& o1 ?2 ^! o
+ U% P! o( e& | }
8 U3 V }+ L( c$ Z' @8 H) ^6 M6 K$ y
private void swarmSetp() {4 K1 N6 v" p9 R2 y( E
list.addLast(new Agent(Id));
/ L) v# \" \/ \0 C& j8 W. P Id++;
' N" T# ]+ X2 `- _/ m8 O3 x }
* k8 c% H3 W( Q! X- x/ V e/ c
) n2 U' Q m1 a! |: r public Activity activateIn(Swarm context) {
7 o1 t9 J* n! m, l1 E- j6 k, { super.activateIn(context);
$ `3 j( X/ S7 L+ B0 v3 Z: Y- { schedule.activateIn(this);
' \" `+ E/ Q7 A( M% n* i) ]; v return getActivity();. @4 ^; ^0 E' B/ `! z0 E w
}; q# s% K* G$ e1 X( [# m
@' {' k* C( e! W3 r. C9 w, D
public static void main(String[] args) {& l; j G J4 t" X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" G8 ^7 T3 r& k: b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- x; \3 s4 L) q% w& I
swarms.buildObjects();
^2 y# N3 d+ y9 P4 E4 F swarms.buildActions();
' d4 N0 r7 \. a' q+ i swarms.activateIn(null).run();
. O- @. n1 G* A5 K+ U7 X/ G }7 u& b% h: |4 G, Z7 F* V3 g
& N- O6 e$ k% ~! G; v
} |
|