|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 ?3 h& Q/ {& a! N0 m* s- a# U7 X; X: P; h. ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ S1 S9 n- D* a* P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 n0 t& n% \( D5 e7 z3 M
swarm.SignatureNotFoundException
% t' s: t9 s1 |! a+ q7 j/ I at swarm.Selector.<init>(Selector.java:76)9 A: T) k) M7 r4 p1 m. N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ @7 ?1 e) @) Q; Z at ActionGroupDemo.main(ActionGroupDemo.java:67)
. }- ~; A% N- `! \
" H8 y9 c; z; y" j7 n5 n) H _( J
import swarm.objectbase.SwarmImpl;
, n5 L/ q7 h* `2 v; \import swarm.objectbase.Swarm;6 A, A/ d) Y9 C v: @+ V2 \4 i
import swarm.activity.ScheduleImpl;$ C _$ h y" U( m
import swarm.activity.Activity;3 E( H6 R2 C4 `% U S8 n% H
import swarm.activity.ActionGroupImpl; A; y9 Y/ Q1 Q: K
import swarm.collections.ListImpl;7 E t1 z3 E. c1 }' T) @/ r( z- R; ?' U
import swarm.defobj.Zone; . [3 L8 x/ L) _) B* l# E
import swarm.Globals;
' ^ Y& V9 L( Kimport swarm.Selector;' Y+ @- a- w9 g7 T5 f, a+ T; U
import swarm.activity.ActionGroup; * e9 M5 f. d; u2 m9 {1 L! _. O
class Agent {+ u+ z( L" @% S0 ]" `: e
char id;
& z1 T E' T3 F% o3 R6 n- R, {: l( _8 r! I7 K
Agent(char id) {
: w4 I0 v: Z. i+ F E this.id = id;
4 \/ H& e) \7 S: c }
3 T$ G' }, Q) i" I z( c5 U( z5 e, C. a/ E7 z8 A
public void agentStep() {
" q6 C+ P* B4 \( B, C! E8 [! ? System.out.println(id + ":" + Globals.env.getCurrentTime());4 w, ]+ _3 Z6 W1 q% O
}
/ b0 U' J! `. o1 s5 E9 _* o) X& B2 _}
! b m6 P& z0 U5 T2 D3 d/ W; b. Y- t' Q, G5 c
public class ActionGroupDemo extends SwarmImpl {
2 W' G1 Y! A* A0 U ScheduleImpl schedule;7 u2 C# G5 \+ k4 L
ActionGroupImpl actionGroup;
; n0 Z$ ` |6 ?, S ListImpl list; A$ Z" ?& J( U5 s4 }+ s
char Id = 'a';
' `1 v8 H: g3 S* p
6 I6 I6 p" m+ t) N/ p ActionGroupDemo(Zone aZone) { _, ^) F ]0 ]9 V, I5 G, L# o
super(aZone);
2 P. v( F9 o- V" z2 t: }1 p3 l9 X list = new ListImpl(aZone);
* d8 `1 c W- g2 X! }, I( E! C swarmSetp();* ~% F$ q% Q7 x! `: x' u
actionGroup = new ActionGroupImpl(aZone);
" L& P% H; F8 P8 L2 F( Y1 [; f schedule = new ScheduleImpl(aZone);8 D) w* O/ j5 m- ^3 Q5 U
try {1 ?/ k, H: I5 C& R1 n9 |, Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. ~$ O, O7 w I5 C0 c! q( G3 W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 n0 L1 G5 I, @5 r4 D9 E ) D+ A# k/ m _7 F/ O c: b5 r
actionGroup.createActionForEach$message(list, agentSel);7 x) K: Z# j$ F1 w: d
actionGroup.createActionTo$message(this, swarmSel); O& p5 m8 ~9 a& r% _# i, C" q B
schedule.at$createAction(0, actionGroup);8 P3 k, l' v8 K- W
schedule.at$createAction(1, actionGroup);& B8 {) r# n f# _2 L
schedule.at$createAction(2, actionGroup);* `) H9 g$ w. E& b
% ~0 n: W% K+ Q; p
} catch (Exception e) {5 D( a8 q ?4 `/ Q" J& Y
e.printStackTrace(System.err);
' w \- Q( t0 L- Z2 P/ C //System.out.println(e);# V9 f+ W$ l& _% U
System.exit(1);: z7 y: m' Z/ f' Y
}
- z: z! `; [$ S7 G0 l4 L4 W2 V/ Z6 z& f
9 W6 V" z; w1 X( a: ` }
' O: i% V9 Z* b+ K f/ W6 F/ ~& R; Y
1 c# o! O7 G9 v2 ?( E1 G1 [/ o" R private void swarmSetp() {
$ t& O/ [% y3 W) i" D" P# c list.addLast(new Agent(Id));: ~- o9 Z, G r" O
Id++;
' f% K l K) |/ ]* w }
' W# I8 n( E7 w0 `0 b
8 P0 h8 n8 h, L9 ?( m" k) `' ] public Activity activateIn(Swarm context) {$ ~' U( U: v) n
super.activateIn(context);
# O# z- M, d& m) [3 c+ X schedule.activateIn(this); A8 }# z- k4 ?1 \9 d: U0 J
return getActivity();
4 z8 n. |/ r5 n& B1 l }
8 A& x% {# ^) ]
- B) D; ~0 `9 r: I public static void main(String[] args) {
! t' F1 e+ |$ l* Y( w. F* v, x& f8 t Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 Q- t4 ^* b4 W3 [% V j3 `! T9 i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& u6 D( Q* z* R; G% X
swarms.buildObjects();
# s9 i. R. G$ x2 E: a swarms.buildActions();6 u+ F. P5 \) |/ w# k; d
swarms.activateIn(null).run();
( X' P; A _1 q, h- g }& `" M5 I0 ~4 C: s/ g: q6 @
/ R9 l- L" ~+ l" L} |
|