|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - a2 Z4 ^* I" }* M5 z" _
& z9 \0 G4 l9 h( _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% \ G' `4 s( P* M/ o6 a/ u! c0 n. R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& p9 } M: q! ?3 E2 S, f* Fswarm.SignatureNotFoundException
# {: I- T$ i. i at swarm.Selector.<init>(Selector.java:76)3 g! M5 Z* U0 W! X2 p1 M
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ T5 z% X1 H' P( j: {1 B; } at ActionGroupDemo.main(ActionGroupDemo.java:67)/ q0 t1 Y4 n2 S+ z0 m
9 ?5 d! n2 ~0 F0 J
1 `, ^, O% g# timport swarm.objectbase.SwarmImpl;
. ~7 l7 }6 n* B: p) h. Simport swarm.objectbase.Swarm;* z4 i1 R% x1 y% K: O# j' A
import swarm.activity.ScheduleImpl;. s6 b! \/ n% ]# v, P
import swarm.activity.Activity;- _ z* j1 p' F% @2 K/ Y
import swarm.activity.ActionGroupImpl;9 n0 ]/ G) q* _- K$ p
import swarm.collections.ListImpl;
7 U$ Q6 T5 E% a5 Simport swarm.defobj.Zone; ; [$ ^# p. N" X0 J( G4 B
import swarm.Globals;" \6 G4 R. U# S" z) M0 G
import swarm.Selector;
& p# Q3 X% O3 Z! {/ B% v0 X& Timport swarm.activity.ActionGroup; % J3 g* Y* M( x ~- `% o+ J. D5 g
class Agent {
k( u( {) U# I A( l char id;
. ?* R$ q( u& v# h H
# a% w: q& w; Q* j Agent(char id) {
- j* m, C/ g! Q! F8 x8 {9 m9 B this.id = id;
5 q7 }7 K& u) s7 S* c+ c }, F3 x2 ]! V0 b: g$ t
% S) }- C! M5 b* S$ ]
public void agentStep() {* P% C/ V# _ |! f) k- X7 ?+ k
System.out.println(id + ":" + Globals.env.getCurrentTime());" j5 i& J0 k! Y& e( o
}
* O$ F- s- b a t* h- q}6 F& O+ b# D% @
+ G! G5 C$ l+ Z4 t% j) m! V* epublic class ActionGroupDemo extends SwarmImpl {
: j; a& R, i( A9 f ScheduleImpl schedule;
; o3 x9 E# w( n% G* u$ M/ { ActionGroupImpl actionGroup;: Q( T, ?" T3 Y$ s* m' S4 d4 P! x' q2 f6 g
ListImpl list;. X ^6 T) m$ L1 H' t! k$ V/ Q
char Id = 'a';
8 i% F5 g+ w4 z: q
% f$ S6 \1 p$ M1 e" a7 E; @ ActionGroupDemo(Zone aZone) {
) a; R2 G4 O1 K) M( W6 d. t4 s* s super(aZone);
" @) s' g* a; f( j) {; N list = new ListImpl(aZone);
7 |' b# ~- u L4 m9 j: ?6 C swarmSetp();
/ Q1 l( F7 ]8 U9 ?+ A9 v/ k actionGroup = new ActionGroupImpl(aZone);
f j3 y, ?) o3 U schedule = new ScheduleImpl(aZone); X& o3 T+ j9 t/ B g
try {5 Q0 w3 k" }( y- s1 ?1 G( V
Selector agentSel = new Selector(Agent.class, "agentStep", false);
|5 D9 J1 r0 H" l- O4 o# j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ x2 X* H# P) p9 d
0 u Z+ H$ V, R+ F
actionGroup.createActionForEach$message(list, agentSel);
$ W6 [4 E" l; ^/ f: E7 D actionGroup.createActionTo$message(this, swarmSel);' u) W1 A& m$ i; p$ L
schedule.at$createAction(0, actionGroup);8 Y1 [ z0 C0 [- u% o
schedule.at$createAction(1, actionGroup);
, Q! N9 x) t7 i4 z schedule.at$createAction(2, actionGroup);! b' S' j7 \9 ?% E
+ {- g6 J' ~- x0 e* [* W
} catch (Exception e) {8 f1 ^ A/ t) D6 U: x, \8 @+ R
e.printStackTrace(System.err);
; M/ F5 v, O) P, I! M //System.out.println(e);9 n+ Q8 `- X" A/ n
System.exit(1);* H ?$ ^7 a# y) }! K! Y3 ~, u2 F
}
# S0 i: i" X& w9 |5 }$ e' D6 C" @3 H( A8 ~! Q( m& [
3 N0 G1 ^* E/ F8 b: h- E
}7 `4 M" a( O2 F6 Q7 y$ M
+ x0 g+ @8 Q2 S+ T" o private void swarmSetp() {
4 q; c7 m t8 n! t4 ] list.addLast(new Agent(Id)); c: I2 c" O4 } S O& l) k: _
Id++;9 J' p2 e3 ^4 d! L
}6 K. v! y7 M6 I" ~1 S, h( S
4 x7 c6 X8 o% D% o public Activity activateIn(Swarm context) {
. z: S& n3 w1 n( F3 Y8 J1 G$ P super.activateIn(context);& ]& G( s4 b+ ]( X E
schedule.activateIn(this);
' A7 i k0 ^ q/ `, X1 { return getActivity();
6 \, Y' R8 P% h- M) @- ^7 X, u }
7 q+ V4 {" M3 S
6 ^; ^/ C; g2 R9 Y public static void main(String[] args) {
$ |& R& _$ N& {& s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 J6 s* A( Z. s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ s7 m0 A/ ]. A' }2 d
swarms.buildObjects();0 @' G2 r" N; W2 m* F2 | x
swarms.buildActions();
2 ^1 C, q3 _" F" ?; E swarms.activateIn(null).run();
; ^" F2 O2 H, q% J+ {+ ~+ f0 a }
$ k3 L# t% @( G$ `' R9 z- h% y+ `7 \) V- n1 k1 Z! k3 e
} |
|