|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 I1 o+ X* L+ U/ Q8 n! B C& ?; T; h% ~! t/ ]- w' K% t3 ]. k6 r( n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* I/ U( H v3 P5 G0 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 S! Q. h/ o. i& \3 z
swarm.SignatureNotFoundException' D6 F# x# l9 r1 H% n4 a/ \0 ^
at swarm.Selector.<init>(Selector.java:76)
* I/ g& ~! b- G; h( s- G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) Y+ B0 `- w; E; y
at ActionGroupDemo.main(ActionGroupDemo.java:67)# K8 v' R# S& L2 ~, s. m& \7 g
6 O! P* F0 C9 i* T2 _9 s$ S: V4 d4 w" r, S n. L
import swarm.objectbase.SwarmImpl;
7 o8 F. ~: F! w- e0 C4 Wimport swarm.objectbase.Swarm;
1 | {- H" O( q* ~import swarm.activity.ScheduleImpl;) A5 d8 J) K( U% f/ s% \
import swarm.activity.Activity;. U- ~6 G. T* G& j( z" W! R# N
import swarm.activity.ActionGroupImpl; I0 I/ m" c7 O3 ^
import swarm.collections.ListImpl;. J4 U5 c% o/ q( e5 r; D3 J
import swarm.defobj.Zone;
' s- j, r' w6 b2 D% bimport swarm.Globals;
: x0 s1 q5 b" G8 ?% _* B; dimport swarm.Selector;
4 q& `; f2 X! P% h. Simport swarm.activity.ActionGroup;
2 n0 R& \1 |1 F1 V+ S! k5 q. j! mclass Agent {
7 H9 u1 _8 l& ~; |) u( g* {* t char id;
% ^# d, h/ Z/ n: i- w4 j. `3 k
8 ^: u3 y. l# \3 B Agent(char id) {
: f+ t6 E5 r4 W% Z this.id = id;
3 t+ r8 r9 X8 [( P6 T7 b F }
! T( M: \# `3 Z: t* P+ F% d( B* H% L. F1 l2 c3 [
public void agentStep() {) y* v J# a( K6 N& r# d- Q
System.out.println(id + ":" + Globals.env.getCurrentTime());
- R; _/ l% N' Q }
7 W8 G$ w( C4 R8 ~" E}
& G# E7 S3 s" k/ q) T- b5 W) [/ C' @6 n2 f. ?. g2 O
public class ActionGroupDemo extends SwarmImpl {3 X+ u P4 A, C3 P0 _6 B) K
ScheduleImpl schedule;5 W$ Q4 m9 t u5 W
ActionGroupImpl actionGroup;
6 z7 `9 d- A& R; n. J3 o ListImpl list;( g2 \+ `1 B% U, Q
char Id = 'a';' E4 n9 p' G; a$ n j* e3 Y$ i
/ A; @7 |* F% o1 U2 u' ~ ActionGroupDemo(Zone aZone) {
( t( {9 F/ |. _ super(aZone);
- X4 l+ N3 H5 i) T+ O( B5 f list = new ListImpl(aZone);
6 H. F( N6 _) u* c) M+ {. Y swarmSetp();
3 s6 |' ?) [3 A' }7 s actionGroup = new ActionGroupImpl(aZone);5 `! ~" \. h5 N3 e9 B0 s3 j9 z0 w
schedule = new ScheduleImpl(aZone);; @ u8 e# b# E& A- j1 h4 p! i
try {# i4 O6 _+ G- N' P
Selector agentSel = new Selector(Agent.class, "agentStep", false);
! m+ [0 }1 y+ [+ J Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* K* f* G% w* b3 u3 Y / y3 ?5 ^+ {$ A9 m1 i0 A
actionGroup.createActionForEach$message(list, agentSel);3 `0 u0 {3 P9 `
actionGroup.createActionTo$message(this, swarmSel);5 z- X, b6 w( Z6 l
schedule.at$createAction(0, actionGroup); a) F" Y' ^: w/ H# e
schedule.at$createAction(1, actionGroup);
4 X3 d2 K/ ^/ _) n8 N. d schedule.at$createAction(2, actionGroup);! p6 @- [" `; P) f" d$ u2 M, s
1 g5 ?6 D$ A( O8 x9 C } catch (Exception e) {
0 b6 Q' ]9 K2 \/ T e.printStackTrace(System.err);: U( ^3 o+ E8 i$ N1 p5 p( B
//System.out.println(e);# n/ g6 Q0 ]8 C
System.exit(1);' Q; j' w( g+ u6 d8 @
}
$ N i2 X# G% o! |1 c+ Z
6 c- p$ u: N y* o* q4 r2 T4 ^
/ y0 p- i: w" S9 b }
1 p5 [( l9 V X8 f4 c4 I d6 Y. u1 e" G, r) P
private void swarmSetp() {
' @4 R4 u3 r+ I( I4 f( j list.addLast(new Agent(Id));+ ?6 A8 k! z$ t+ e4 Z* [
Id++;$ T0 E: P5 i" w0 o3 J
}
7 y8 ]* A9 s; x# s* i* z6 Q. |( X, v
& i; f7 v: ?3 {8 z1 |/ G6 i public Activity activateIn(Swarm context) {
" Z2 |2 H9 |9 }* A9 w* N super.activateIn(context);
/ T) V6 C* U( `0 |5 V7 m3 i schedule.activateIn(this);, Z6 B# ~5 b X% a1 s! a1 z5 j# y; A- o
return getActivity();
/ \1 r& W) e" B1 X3 G }- F0 i" J+ B# h. P0 R; q- ?
* F& Z% Y7 U6 o9 ^) S* b. M' L& U O
public static void main(String[] args) {1 h) k( ?# }6 `* p
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. V2 t, k& q! n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. @2 J- F% A0 b, k swarms.buildObjects();
9 B' E" q B- | L) @, d; y swarms.buildActions();
, k2 \ v! C8 A; Q7 o swarms.activateIn(null).run();5 r# @/ U' u! T
}* A& K$ p6 ]2 e2 `$ K
) E: r" X* o$ n* C) b% H
} |
|