|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( p$ r# G$ G' I" s3 M% R# w1 ]* w' O8 u$ S/ q& x2 {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; ` ?. S3 h# G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* M' t! [7 {( ?" ^" N2 y
swarm.SignatureNotFoundException
% Z! J9 D- d8 K) n0 j at swarm.Selector.<init>(Selector.java:76)
6 ^2 T2 k0 f# L' U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: G# \( x$ `- [3 c! U4 C0 J at ActionGroupDemo.main(ActionGroupDemo.java:67)
: \" h3 |- [* r# n4 i% F; y6 i
! ?; M0 y7 ~) }, M0 e8 Z! }" `4 o8 x/ }& V# ?
import swarm.objectbase.SwarmImpl;
# B! B9 _" Z t; mimport swarm.objectbase.Swarm;
% O7 H$ B% q* w" H7 A- M; P. F: X7 `import swarm.activity.ScheduleImpl;9 L1 X8 Y6 A8 s- r, a
import swarm.activity.Activity;
7 U# n- ]5 S- q9 U: h. W( ]import swarm.activity.ActionGroupImpl;
1 F% i4 u" F! y# K( p- Y2 _5 E4 mimport swarm.collections.ListImpl;
/ Q" ^; G ~% Oimport swarm.defobj.Zone;
4 }7 |( ]" m5 m& ]import swarm.Globals;
7 {4 }3 Z. d8 l, e" m9 C s) q6 F1 k; `& [import swarm.Selector;
+ |" P Q# B4 D! Y* U8 iimport swarm.activity.ActionGroup; 1 F2 \+ Z, S8 A! D
class Agent {# _) C( k* q% v9 S& w$ h: ~; b
char id;) r; Z5 R8 ~8 d/ W- v
2 A$ C& Q4 Z, E1 z1 \ U* q# ^
Agent(char id) {
4 _! O- i8 X7 `. j3 h9 }& L this.id = id;
; R3 Q* E& G0 L. W. X9 C }
+ _# b V8 P# O
4 x& F8 Q5 o6 T8 J2 C public void agentStep() {
! h& O. {9 ]+ ^ System.out.println(id + ":" + Globals.env.getCurrentTime());3 w/ r. F/ H" L& W# g
}' x- `% Q, p) X$ b& e+ f
}
7 D8 G; ]1 Q8 u0 A) f3 p
, ?; Z6 L- X$ a7 V$ ~public class ActionGroupDemo extends SwarmImpl {( @' I2 n5 |/ C. d) d
ScheduleImpl schedule;
& w4 ]: z8 ^5 B- o ActionGroupImpl actionGroup;
, b1 C# p. D' d" d8 e ListImpl list;7 O0 w9 f3 ] P" V, C3 Q7 n% w P
char Id = 'a';
2 r F U: L- W3 ?7 P/ Z
) @2 Q6 G# h7 l$ N/ S5 s ActionGroupDemo(Zone aZone) {, u& R% ^4 W* `
super(aZone);
! h! ]3 _; H. E5 ^7 T$ Z& Z list = new ListImpl(aZone);
4 `' h2 H& k H5 T( e. r& | swarmSetp();) R$ L% K+ L7 f
actionGroup = new ActionGroupImpl(aZone);4 ?: s# }8 Q w* {! J9 o' b
schedule = new ScheduleImpl(aZone);
7 R# z X+ F X9 x% q; \ try {
- x8 C+ X v" P7 u7 t |: W, j Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ ?9 z T V5 {2 O' Q; u5 h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, K& X' l0 p6 I( U# N' D
z# C3 Z' T5 W# I% y7 ` actionGroup.createActionForEach$message(list, agentSel);8 H7 Z: k, M* x# s
actionGroup.createActionTo$message(this, swarmSel);6 f+ r& }& k; y7 F5 v' `. @
schedule.at$createAction(0, actionGroup);
4 ?8 I/ C8 ^0 {; r( S! B schedule.at$createAction(1, actionGroup);* u R5 u j$ _+ r3 T z) S* T
schedule.at$createAction(2, actionGroup);. V5 g+ a. w7 e/ y
# x4 L: `; }, Y& @- z7 \
} catch (Exception e) {
+ C& `% |6 O7 a* J' r e.printStackTrace(System.err);7 x2 W* u7 i+ { R% P q4 U }
//System.out.println(e);* W1 V# G B( Y0 y4 i6 n8 g4 K4 {2 |
System.exit(1);1 B$ q% F0 H0 D1 w
}# Z. N9 [& D! z! Y* }
7 g. a5 f9 K) o9 h- U
4 Q7 C/ t2 O; m h8 M: q$ f! J
}( j1 n. O" R, D/ i
/ N3 l/ H) V% R. z4 W private void swarmSetp() {% p l4 _5 j- S3 ~, O3 R4 T6 @
list.addLast(new Agent(Id));
^# _2 u& G8 T" C Id++; h z7 y3 V# D/ x S, G
}
* C* }9 ?. e5 w- v) B
& Q) [0 A1 \& U) U public Activity activateIn(Swarm context) {
, S4 ^7 L: E. S: c super.activateIn(context);
9 J* N/ M5 ], V) b schedule.activateIn(this);4 Y3 L/ ^, u% H4 `+ W3 ^/ y
return getActivity();3 g ^3 ?( y4 E
}- T2 F5 a3 d l2 S
9 S& ]# |2 T- }! g
public static void main(String[] args) {
) ^! t2 T$ _% T2 k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! ~8 |/ {/ @# C! m3 W5 \$ @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ o$ \! c8 i9 |; s
swarms.buildObjects();' T: }9 o0 ?. i+ r" Q
swarms.buildActions();* J* Y) h6 K) n! s
swarms.activateIn(null).run();
) h8 x) t& @4 j9 C" g& o' P }
; v) \5 L! o& l6 y/ ^3 @5 C7 G: A* x: E) d8 Q0 c8 m7 X
} |
|