|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 p5 j/ c5 a# @; r- H5 B
5 x) @: q/ e7 Y# K+ F# b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ k% X! H# o. Y V! \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 A K ^/ g5 T. u) _0 U
swarm.SignatureNotFoundException
1 J' a$ L, Y0 }: k at swarm.Selector.<init>(Selector.java:76)
5 F ]/ m; u7 w- E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 { F- P- h& Z2 m at ActionGroupDemo.main(ActionGroupDemo.java:67). [* b) X# i1 ?: l( v8 A
8 C: V; f4 x( n0 G8 B
4 A; D* s. Y! k8 h, i
import swarm.objectbase.SwarmImpl;
1 \! |; E! P3 W+ t) Z% limport swarm.objectbase.Swarm;
3 j; w6 a) T$ G0 [% n1 qimport swarm.activity.ScheduleImpl; ]* _! D! l, v" i% T
import swarm.activity.Activity;
- J v: s" Q1 R& Z3 v% w, ~import swarm.activity.ActionGroupImpl;
: t9 i+ H; W- `% r1 A( W# @import swarm.collections.ListImpl;
! E; V1 s' E- L1 ?, `" fimport swarm.defobj.Zone;
2 i% G0 c2 d7 e( v. ?8 u4 ?% y2 @import swarm.Globals;
2 f4 H0 _( Q: o- Gimport swarm.Selector;2 o9 ^1 N2 M' i2 Z) ~
import swarm.activity.ActionGroup; 0 c' B. ?1 k( w r, }
class Agent {
9 j o% E( i4 P5 V2 H2 k3 \7 a char id;
; C1 |, T, ^ H. ]( G, R
# }5 | Y6 l, G Agent(char id) {2 f6 R5 \! `; v# i8 O, ~
this.id = id;6 J! v2 v$ H8 M" v
}- U/ P$ `) J# J/ k# r
# n, S; ?6 |' r: r
public void agentStep() {
" Z4 K5 C6 d4 R8 n9 c% E" u System.out.println(id + ":" + Globals.env.getCurrentTime());: e" o% A' _6 n; ~$ {4 S
}8 z z! i1 X* o. l
}7 w6 w" A; _( U/ H7 h/ L
) V9 G) u0 M& R. m' rpublic class ActionGroupDemo extends SwarmImpl {
) n! |" F# q: D0 Z' T ScheduleImpl schedule;3 a- k) {# w \" c) V8 Y9 v; c0 [0 u
ActionGroupImpl actionGroup;% Z$ n, Q, O; x0 D/ d
ListImpl list;
& ^2 Z9 v5 d. |% h; P, E char Id = 'a';
) M% g( O3 ^9 B8 I$ x( r$ U P+ l+ F* m) h1 D0 w ]/ }
ActionGroupDemo(Zone aZone) {, c& n! D& k" Y! \+ T- P
super(aZone);
7 ^2 v$ z5 K: [# A" o list = new ListImpl(aZone);
1 v2 g7 d) o+ ~; G swarmSetp();/ R. u, ~# Z3 F$ m" q' Z
actionGroup = new ActionGroupImpl(aZone);7 E& E# G& S! X7 h
schedule = new ScheduleImpl(aZone);
5 W" G7 \% R) b& g try {
* ^& a5 V0 B. g7 M0 Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 G/ Q3 w! `+ l( N7 ^+ u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 O3 a( p* E" ?" s3 W# j
2 o, c z( W% G: s, g- f actionGroup.createActionForEach$message(list, agentSel);. p, Z" N$ Q) k2 \
actionGroup.createActionTo$message(this, swarmSel);
/ B! t: ]0 [+ K, G) c; h schedule.at$createAction(0, actionGroup);. w5 b- D5 I9 w( U% }
schedule.at$createAction(1, actionGroup);
, s) o% v$ u* A5 r( c: f9 V schedule.at$createAction(2, actionGroup);
4 ~ y/ v% L' c7 {2 S5 j: \+ K( d& ?7 ^8 c( c
} catch (Exception e) {
0 M3 I8 l' f! ^ e.printStackTrace(System.err);$ T( A. c1 ]* ?* }0 G; X2 }# M+ X
//System.out.println(e);, ~' y2 w- `! G; ~
System.exit(1);& U9 y5 O6 K' p/ T9 w
}1 c5 y3 V% a9 W
. D* {5 w1 w' _1 h) L. T* d! Y
! h3 y! K; X, ]2 a" Z; c; ]$ y }
- d: p+ z8 d! v9 n0 z ?: c: F8 A ?
private void swarmSetp() {- H$ v) T4 k; R7 |6 c) }% D+ k
list.addLast(new Agent(Id));) E" Q U8 e2 D5 Y+ z" N
Id++;( D2 o0 M8 W+ P+ C, ^% G
}: i: `* V# n8 i+ m6 P: E0 ?0 a$ l' \
# o F/ {1 C4 O% ]5 Z
public Activity activateIn(Swarm context) {" Z% t! b5 q, F2 o5 V3 b
super.activateIn(context);( l C9 a; e: l0 D; [3 Z7 h! d
schedule.activateIn(this);! R# h+ x8 Q9 s* ~
return getActivity();3 n, s5 Y0 x- b$ Y3 R" A+ x7 _
}
& O* o% c6 { D( A* C! i) ^1 e# {3 _! M% ^1 Z W$ d! p. i
public static void main(String[] args) {
2 I, {- U* Y3 ]' v: |* S9 B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( S# C1 F4 ^' E! m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# y6 m- t5 P: v5 ?6 l/ e t swarms.buildObjects();
! E9 q! b. H& v swarms.buildActions();
% T/ u$ _4 _" X) G9 q) \) c- ] swarms.activateIn(null).run();
& U( F) ]! q' y. h( n }- f, b: U# q3 b7 k- G. H' Y
2 e" s) V- N4 {} |
|