|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 i6 I4 O( F: r3 G1 R1 e2 c5 m8 @5 E( h+ G: G- I1 k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! |' ]# \/ C9 I2 B# T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* G" K6 L# y8 N8 \8 u1 h7 s
swarm.SignatureNotFoundException& N! ]& L3 }! I) t9 Q
at swarm.Selector.<init>(Selector.java:76)% T- N. y# k2 o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 O) ~2 D6 P/ |: w
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 W: ^" j) z+ s! R. e6 I8 u; {- V R/ b2 b7 [
0 l8 z0 E: `: B) n7 _& x g
import swarm.objectbase.SwarmImpl;9 \2 K' I d- M G6 E
import swarm.objectbase.Swarm;7 C" w5 l, w# O
import swarm.activity.ScheduleImpl;
" W- R2 y/ a# F" Z* zimport swarm.activity.Activity;2 O, ]8 E" \& z3 L$ x! r% M' v
import swarm.activity.ActionGroupImpl; P1 T5 |6 a# t i& Q
import swarm.collections.ListImpl;
+ O5 |4 j! m" L/ \& aimport swarm.defobj.Zone;
, H7 n& B8 Y0 T3 i* N2 O: {. bimport swarm.Globals;& Y! u2 z# ?3 B: m. @$ |
import swarm.Selector;
, w* e! j' O ]* }2 e/ Yimport swarm.activity.ActionGroup; 2 E ~; B0 ~4 j
class Agent {2 ^; _' f7 d8 j
char id;0 s9 t7 M7 m6 J! A; S5 c
' P$ v# L" V. k6 A; m7 c5 m' l
Agent(char id) {+ Q2 z- D- x: C# @1 @; Y H
this.id = id;
* d- {4 U9 {6 K9 Z4 A }2 E! W Z0 K4 s9 N
: q4 S% y* W& e. \ F3 u# z3 ~( m public void agentStep() {
8 U" k2 s: {+ P. d* g System.out.println(id + ":" + Globals.env.getCurrentTime());
- y+ N ?3 M- ? }
- ^$ e. A0 N i/ B# s}
! T/ S5 e+ D6 k0 X o) ^9 D# L5 A
% C& ~! e1 s. |# Ipublic class ActionGroupDemo extends SwarmImpl {
$ P! ?6 A. e% n: D ScheduleImpl schedule;3 E+ |; Y& N8 |& L, w
ActionGroupImpl actionGroup;
0 @1 t# t0 n$ a1 g" |/ m: Q ListImpl list;8 D# Y v( O: \. H1 r
char Id = 'a';
3 D5 W( U/ M! X) e( s. ` R9 S; ~( J) ?" H# ]8 F+ E
ActionGroupDemo(Zone aZone) {
2 z' r3 m" F- g% m3 j) x super(aZone);
: P x* P& Z& K list = new ListImpl(aZone);
3 b3 U0 x1 C; g/ X+ B, @( k swarmSetp();
' E E, e) I. o1 @" R# D actionGroup = new ActionGroupImpl(aZone);
/ L1 B( Z+ T0 ~ schedule = new ScheduleImpl(aZone);
6 ^0 [% l. U) D6 B+ S, U try {+ N1 u( p$ B2 @) Y! |+ R& _
Selector agentSel = new Selector(Agent.class, "agentStep", false);; D1 s& a1 t4 z6 P* q- h# z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 O/ {6 ~% h K1 E1 X+ [
* m, q5 e# ^' D" R actionGroup.createActionForEach$message(list, agentSel);
& l8 p2 P! b9 S* J a: B9 @ actionGroup.createActionTo$message(this, swarmSel);2 }8 N, q' _! p1 x- Q' i! P
schedule.at$createAction(0, actionGroup);
" u- ^7 Z) l4 b2 G( Q* C schedule.at$createAction(1, actionGroup);
0 }/ s0 T! f1 A& V. k7 M schedule.at$createAction(2, actionGroup);
! f, B- F4 Q; ?) u: z, e
5 ~# P/ {) v9 v* c9 a; r } catch (Exception e) {
+ g! ^, b- ?; e2 ~) b7 A" l e.printStackTrace(System.err);8 }6 e6 Z$ u5 w( R$ l- u, S
//System.out.println(e);
6 z9 L5 ^* D$ \ System.exit(1);5 c8 i' l& b7 y: ~
}
/ B, `4 V' y2 e6 v5 `5 |# z
# T" _% R0 J! |! ^4 e5 G2 ~' a5 y% ?% v2 \; w5 K& x" q
}
- ? P/ a0 l6 p9 y+ H1 r
7 K6 O; [2 X# }3 b: f private void swarmSetp() {+ M0 _# J5 d' E2 x/ z
list.addLast(new Agent(Id));% P8 b0 C- E- p3 F8 G. }
Id++;
+ v9 a1 M A- C) @ l2 f }
' L! ?4 i. i/ \5 w6 Y% I
; @) `* [- B7 n- n' l+ ~( {" K2 N public Activity activateIn(Swarm context) {% a0 T) i! k7 T. w; O, Q
super.activateIn(context);$ T3 v/ T! z* H
schedule.activateIn(this);& }, f: t; r9 R8 t' d: c! G' s% i, n
return getActivity();
( K0 O1 @$ {: Y& `$ w }
1 B m& b1 N( Q: w" V+ G" s% ?, D2 i$ Q+ \
public static void main(String[] args) {
+ z: G5 D {( a3 O; J% E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' D9 i2 q; F& s8 ~; g7 S5 s
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 ^0 I k* O( O
swarms.buildObjects();
4 e8 ?( ?. N) k+ P& x swarms.buildActions();0 j8 C9 K8 j9 {% I2 y4 Q
swarms.activateIn(null).run();
( z+ K% f9 P3 F. K% v! ?. v& U, e } q7 m9 r3 Z3 N* }
7 D t% N( }& [4 t ]8 G: f} |
|