|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 b# F! h# [* |% A# K3 p# o N- J( k6 k) `$ x, O, |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! l" w$ i: p, b/ l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., O9 D8 A+ N% n* n. m
swarm.SignatureNotFoundException! W$ X6 k) q+ S2 f6 ^8 X( X7 U5 F
at swarm.Selector.<init>(Selector.java:76); f; K9 s( J0 D: P. y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ n9 C% _3 P" v; W3 B
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ m: s- m* b, h
+ H- R& u7 h2 Q R7 X4 y- @8 L# t+ {) }0 v
import swarm.objectbase.SwarmImpl;
* E. K1 |# t" Q, f, J! \# @import swarm.objectbase.Swarm;
' ^4 g' h! K0 `5 h3 _- s( ]4 Y! N! Kimport swarm.activity.ScheduleImpl;
! `/ e2 {3 x+ L4 U& G* G$ simport swarm.activity.Activity;
* K0 U! ]' G1 G( b, Fimport swarm.activity.ActionGroupImpl;! Z0 U3 i+ _& g% C, W' y
import swarm.collections.ListImpl;6 Y' o! h9 k _4 L3 P
import swarm.defobj.Zone;
& P' b7 O7 M. d* T- G. [3 Cimport swarm.Globals;
4 d" S0 `' e: _) \1 K E4 wimport swarm.Selector;! ~5 A6 v F# m0 k$ Q# O; f' ?
import swarm.activity.ActionGroup; " i- z; o x$ x, u5 T% g
class Agent {
& f: r- ~% z& n% E' ^, F1 A char id;2 C! J U, Z: |$ \) e5 A4 {% M
# A. e, h" {/ c r0 f
Agent(char id) {
7 B5 b# F7 R, d; ` this.id = id;
9 B6 v+ g7 s& v7 }8 W9 K) z }
7 b7 k; B7 n8 \0 d6 y1 d7 j9 Z
- D" O: O$ k& b public void agentStep() { K6 c7 ~# t8 ^0 x0 b
System.out.println(id + ":" + Globals.env.getCurrentTime());/ ?2 w% q, z% U! o8 H
}' U* d1 i" A4 | e! e9 I
}" t! s+ K+ {1 t6 A- C
z- r8 p' @6 k7 A# b# Rpublic class ActionGroupDemo extends SwarmImpl {
; e, ]* v) L, o8 l8 ^) C* K ScheduleImpl schedule;/ c& D) p3 ~* Z% n5 m G9 G
ActionGroupImpl actionGroup;
" Y% w4 ^3 M8 y6 f3 N. F ListImpl list;
5 ~: W( i% g; O `- E; S+ u7 j6 g _ char Id = 'a';
# b0 j# ?& |. v1 p7 C& T, u6 k5 f. N9 J) [* K
ActionGroupDemo(Zone aZone) {
. l+ M* ?- v$ ?8 D super(aZone);
6 v( T- X x" }; @' b- B list = new ListImpl(aZone);2 h9 B; G, L1 b' T" y; Y% X9 }9 c
swarmSetp();+ n/ i+ ?/ ~) G3 k
actionGroup = new ActionGroupImpl(aZone);+ {9 |) v3 ?, c
schedule = new ScheduleImpl(aZone);4 H9 i: |( n+ N# W
try {! Z. ]/ u3 k: V5 {/ K
Selector agentSel = new Selector(Agent.class, "agentStep", false);, o( z9 m9 T. S @7 [7 N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% A B4 U) i* n4 x b) Q
% q* F% `, E; V5 L, v/ e
actionGroup.createActionForEach$message(list, agentSel);5 Z" X* m$ _( q
actionGroup.createActionTo$message(this, swarmSel);1 F+ e- [6 @. ~/ `! l; e3 ] a
schedule.at$createAction(0, actionGroup);$ ^: R0 ]( w1 E, g# @- B1 r2 E
schedule.at$createAction(1, actionGroup);
2 S, V i. s+ [' m, A+ x4 @& @) ? schedule.at$createAction(2, actionGroup);! z% e7 m% r5 n( p6 `- F3 s
/ F; [4 m7 ]$ a' O1 x1 P4 Q+ s1 b
} catch (Exception e) {
! R! A/ d' A4 D1 S/ ]& U2 C/ v: I e.printStackTrace(System.err);
( z0 x( k# Q! ]+ p% R //System.out.println(e);* j' p! d/ S2 x6 v6 Y @
System.exit(1);6 @% c, v* f/ b z- n3 {
}
* O1 b3 ?- v$ e" ?+ V$ |
4 u7 g% b% }' k0 h! d1 ^1 O- F) P
( G: ]9 u$ \, | }( }9 Y7 O0 V% k
; H0 t4 j1 `( y: U6 g: P
private void swarmSetp() {7 s' M6 Q& R G' H
list.addLast(new Agent(Id));
7 y( }. Z7 W0 ^) l6 V Id++;
8 L! F/ ~5 \! M2 u' O2 x8 v2 d% t }
$ c, W" q8 _# D3 Z, R4 J3 d) H3 x9 P& l+ Y. A' M
public Activity activateIn(Swarm context) {
4 Z" B3 c5 s6 X/ p- v: S% q& b super.activateIn(context);
: [3 ?& T" j5 ]$ ?" | schedule.activateIn(this);4 L) L8 s M! R# _
return getActivity();
9 f" @: c+ {. _6 }, H+ ^ }
* N! T7 s+ f+ L" X, I. ~7 \. M8 v6 h3 z
public static void main(String[] args) {
2 v! M: z* m. a6 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: L2 U$ N7 f3 O# R8 |* G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 W* l8 B F+ A" n swarms.buildObjects();+ f6 u, z$ D/ _: [. l; d) }( W
swarms.buildActions();( ]; u' n- R. j% C% z- q
swarms.activateIn(null).run();
. S8 |% @. d4 G8 ^7 L* L- n }
/ P# h/ l5 i" I) F' N# v' ~
$ p' ~3 K0 g n$ b" f ~} |
|