|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, j ^* n$ N6 w, a
: G5 g0 W e1 o7 r) I" d9 V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* N% ? J9 A/ I; p* K! D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) t! `' W' y0 }- V. m8 _1 G. b
swarm.SignatureNotFoundException
, [$ X' b. M9 N! @8 ^* y- _$ ? at swarm.Selector.<init>(Selector.java:76)! n* _+ N Z2 _2 }7 Z& s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* U/ c" @, Z8 `7 x- H7 _ at ActionGroupDemo.main(ActionGroupDemo.java:67) J8 D, g' J( J, ?+ _8 ~% s
* {4 x1 N% y: D8 {- E+ E! N4 |" n* ^! ]) G
import swarm.objectbase.SwarmImpl;8 n- v' ?- @. E8 `8 u. S
import swarm.objectbase.Swarm;: M* q7 K8 M7 u& o
import swarm.activity.ScheduleImpl;
5 n' D' [ r+ n, timport swarm.activity.Activity;& g1 R2 g4 s/ H' G' ^( i9 S
import swarm.activity.ActionGroupImpl;4 g, a/ _% r; n
import swarm.collections.ListImpl;
6 n- F8 B6 W% _/ Nimport swarm.defobj.Zone;
0 i& g: g4 ~ H) H7 o+ U* @. I$ |import swarm.Globals;
; h1 x" E- z( B' d/ f; L$ timport swarm.Selector;; N6 H* [9 b8 g
import swarm.activity.ActionGroup; 2 g K E! R7 u
class Agent {
% F Y; ~% I r8 D+ X2 f {5 a7 D char id;3 C. p0 k" K5 T* m1 G1 N
3 { |8 z! ~" j5 Q8 N! f
Agent(char id) {+ S$ e; y9 t; m6 O- Q2 d
this.id = id;( U. x9 \3 j" r, U" k- W) {# k3 R) @
}
" e% |7 c. W6 E* Y
. a4 v2 a/ N. y! j public void agentStep() {
! B2 P9 k. E8 s7 e; J# { System.out.println(id + ":" + Globals.env.getCurrentTime());
% D: Z6 s& U6 j5 {+ f7 e) W+ p }( d( }6 { e, V
}
4 \& [0 [' w, h; [$ Z8 q- r/ B! Q: l, u7 a$ l" Z6 Z0 c( s
public class ActionGroupDemo extends SwarmImpl {
4 J3 g# R" c& y5 Y7 } ScheduleImpl schedule;
+ e* u$ D0 p, q( A+ z8 x2 ]1 R- T0 p N ActionGroupImpl actionGroup;
' v5 j. q, c* b6 M ListImpl list;
% T2 a5 U+ U# A- ` char Id = 'a';3 Z! q B* b1 |, G! r( x$ h6 N$ ]
v% ^- |2 O0 p; a. C* v ActionGroupDemo(Zone aZone) {, B1 o8 q Q+ ^& q H5 Q: v
super(aZone);2 g) q0 K0 T: E, C' O
list = new ListImpl(aZone);
( [1 g- _1 _* U' P* t swarmSetp();
7 X0 u. x: @/ B3 t; u6 w2 e actionGroup = new ActionGroupImpl(aZone);( {% w+ `- I! t+ ?$ X
schedule = new ScheduleImpl(aZone);
2 l/ t6 h# P2 L! l! ~3 K try {
; e9 `5 c9 A9 J w) F Selector agentSel = new Selector(Agent.class, "agentStep", false);
" [% s( {1 K q' k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" F7 {8 Y6 h7 g$ _- S
9 |* E3 s, T" H& Y actionGroup.createActionForEach$message(list, agentSel);# t. G+ i# ^0 I& c, p" C) k' N
actionGroup.createActionTo$message(this, swarmSel);
, c& M5 K+ H$ P6 T* K- a4 q/ A; D/ k5 H schedule.at$createAction(0, actionGroup);
8 q9 @- t1 c$ y# a4 Z schedule.at$createAction(1, actionGroup);
# K, ~( e# z6 K! N( b schedule.at$createAction(2, actionGroup);
/ f& Y. n5 L4 r
" T; M' H1 ?) n ~ N } catch (Exception e) {' B% t, f. F) W0 b* ?
e.printStackTrace(System.err);# J) Z0 S8 S5 F2 e" @# q E
//System.out.println(e);
5 l( W% x, J3 e) u System.exit(1);
5 Z" @& m3 c# I$ q+ N }' U4 w9 y# Z7 t, K! r
; ?- W2 {8 F# \
* r# m! O. c. N6 u }
H g1 p# X( J) m1 ^
3 ]$ B2 H: X' k' W& e private void swarmSetp() {! g, |% E# P7 H# Z. @7 f9 \: P
list.addLast(new Agent(Id));
* \. Y4 b( w9 k1 ?/ B( F Id++;
/ ~1 Y3 e: O& U* W0 ] }
2 w$ Q% B- F2 x2 w' v' R+ L3 B$ _% f% z
public Activity activateIn(Swarm context) {7 g6 K2 x" d. z ~+ }. T$ J
super.activateIn(context);+ |1 G, G) t7 U6 A
schedule.activateIn(this);$ S2 N! ~! e6 |: W
return getActivity();
# `, @/ K, c0 _1 g) u$ V }
& U6 a. T1 N8 s. T7 X- i. k T+ A
public static void main(String[] args) {
$ J9 b$ z# x; L& l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: \ U1 i3 h" t0 g/ d9 _" p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; I. @2 ~* k" Y! u
swarms.buildObjects();
; v( [/ F2 |' G/ m swarms.buildActions();5 n# |7 R6 P6 V9 O' j. g2 f6 T
swarms.activateIn(null).run();* r. t& O& `' Y0 O9 }
}0 K- d7 x$ x3 X; D3 b2 R+ x) q
) m# a [; B+ P. I. ]9 V
} |
|