|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: u+ J; A* @ ^ c" l% K6 K, ?( H0 w! ?6 C$ x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" ]; ~5 O) Y2 }6 r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ]/ v) j. b( G* D: m% E
swarm.SignatureNotFoundException
1 u/ V) y! B. R, s) S: K4 k at swarm.Selector.<init>(Selector.java:76)5 d2 n2 y$ B/ S
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 Q' r) A. Y; N/ q5 [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 {' K8 D3 B3 n
6 }7 V( K/ Y# ]9 l- w+ H* |, n& o6 Z; o: Z0 B2 Y) g
import swarm.objectbase.SwarmImpl;
- T! Z$ j$ ~4 e4 n: iimport swarm.objectbase.Swarm;
( C" G# [! P- z: l+ eimport swarm.activity.ScheduleImpl;0 Z& n8 ^3 K$ H8 _0 m
import swarm.activity.Activity;
3 ]+ C& `9 m4 `$ Q6 q8 s' _3 Iimport swarm.activity.ActionGroupImpl;
- J) o3 d. h. S7 f% \import swarm.collections.ListImpl;6 H( U2 T( E; U. v5 M" c/ c0 D+ S# |
import swarm.defobj.Zone;
. ~" B! a! K2 r/ yimport swarm.Globals;
; f0 i" ~1 b4 y7 x! J! R& iimport swarm.Selector;" s+ D( E/ S. Q( {, ^7 ~# Y) p; {
import swarm.activity.ActionGroup;
# ?# t m* W+ A$ S% ~class Agent {" k6 [0 G8 i! X; y/ i! r) J
char id;( a+ i r5 P- X4 F! x3 M
/ ]+ k, y, x" \8 H, l* @0 ` Agent(char id) {6 E* l9 O( M$ X, _/ f& S0 s4 _
this.id = id;" D4 h' i( X" v
}
6 U r' T8 F! b/ _* O
- {4 u' k7 t$ |, R* L- U5 Q/ f5 e public void agentStep() {8 p8 O, V7 Z" j8 Y1 }2 I
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ s/ c' M4 B$ `0 P }+ z! x: C4 c3 m8 e2 [
}
4 y+ {% z+ Q' d& ^5 p3 i. ^5 k) c' N
public class ActionGroupDemo extends SwarmImpl {
! m. E& G8 I3 w8 ]* M ScheduleImpl schedule;
8 j* \: j* ^( H8 H. ]! \ ActionGroupImpl actionGroup;7 Y3 }* ?/ k4 w! l
ListImpl list;. Z# K2 a$ r% |
char Id = 'a';
4 }: {& x; e8 p f0 d& ]5 M/ F) H5 a
ActionGroupDemo(Zone aZone) {
6 [4 W$ F2 ?2 Z5 B super(aZone);
# N k; X9 c* {# K/ |. A" T list = new ListImpl(aZone);
9 ?0 {) X7 _/ n1 r) ~ swarmSetp();' J6 P, L. t) [! M l
actionGroup = new ActionGroupImpl(aZone);+ c. A A8 x+ ?( ]9 B! v6 ?' a
schedule = new ScheduleImpl(aZone);
0 p( m' D8 W4 A- U+ r1 G try {0 R& h* H4 T( u
Selector agentSel = new Selector(Agent.class, "agentStep", false);* \/ T) ?% L% G& i) [& a0 Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 _( Q" t5 b0 I3 b( O: H# H; K0 S
3 p+ g4 F: u& L; M actionGroup.createActionForEach$message(list, agentSel);
+ u& p! g+ T/ t* q& l6 q. t2 y$ V: d actionGroup.createActionTo$message(this, swarmSel);( P) M+ ?* ~- }2 _7 X. \9 w
schedule.at$createAction(0, actionGroup);
" U8 J' `0 A# h9 b7 c) o5 u schedule.at$createAction(1, actionGroup);
& i+ I+ [8 t2 U schedule.at$createAction(2, actionGroup);2 o2 D! l2 K9 w$ `9 b
* ?: T; Y/ Q( S" t
} catch (Exception e) {
- j8 ]% d d- T* ? e.printStackTrace(System.err);
( G \0 b7 B: B, \ //System.out.println(e);+ {& F* O A* N$ V' s5 k
System.exit(1);9 [, R: a1 y( i
}4 D* k% L, h% R0 G* u
N( r3 h: \$ g' Q
4 J) C* D1 r- U+ e% ?
}
* O+ n6 T& w& q* z5 E4 O4 g7 K' a1 \$ ~* g9 ~
private void swarmSetp() {- k* b7 u& A. s5 x
list.addLast(new Agent(Id));4 |6 R# w9 W4 m" u/ o' c7 j
Id++;
. P, n8 _( D8 J: s# ? D }
( c/ t) }* P" v/ \; X7 s" e) O
/ v; Q E; Q+ ?$ T; S) H' W public Activity activateIn(Swarm context) {0 z M) s( ~/ `' W
super.activateIn(context);
# ?! y- K& T3 u* H# }2 S schedule.activateIn(this);
4 r8 B ^! d7 s6 r return getActivity();
% U4 p5 {+ U3 L2 h0 f2 V }
3 v+ h" P' z5 x7 P" z" T$ e" @4 h4 {% j! v. [- d6 W* M
public static void main(String[] args) {5 j) q4 C2 g$ N: m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( D' }; J t8 O# T. o! m4 G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 h0 r7 T+ x2 O, D F* L swarms.buildObjects();
7 [6 C5 M# s+ }% C a- ]9 R& ~ swarms.buildActions();( l! m9 D# Z* U u6 }5 m. H/ f
swarms.activateIn(null).run();
* q6 I+ n5 N, \! l: W* } }/ M9 _ Y) H% B/ b4 r# g
8 ^/ ?3 ]0 h7 X$ d7 C} |
|