|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 R9 h% }5 y: a& B$ k U/ N# }2 e2 S/ q% l5 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 z& x( M+ W6 G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ i3 ?9 M* W/ e) P' n' V
swarm.SignatureNotFoundException
A) s/ E, \6 P" _# l$ L at swarm.Selector.<init>(Selector.java:76)2 e! m- d5 _( u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" j6 r' i7 @5 \' p at ActionGroupDemo.main(ActionGroupDemo.java:67)4 R, r& C f8 A! ^* s7 `1 U
+ {+ c. P+ s& v
- R' j# o0 E4 w Z9 Q! m/ Iimport swarm.objectbase.SwarmImpl;3 x% f5 U5 ~. L1 d/ O# ]3 [
import swarm.objectbase.Swarm;
! [5 }1 M# s; m& Cimport swarm.activity.ScheduleImpl;+ x) i& ^/ V8 L3 f$ u
import swarm.activity.Activity;2 h% p/ J# ^" ^; \3 ?' @
import swarm.activity.ActionGroupImpl;
( L5 C# ]: h5 J* Iimport swarm.collections.ListImpl;
* p- s5 U/ e% L! w8 [$ uimport swarm.defobj.Zone; 6 C! O9 M. a& e e0 `
import swarm.Globals;9 q: Y2 v& l; D1 P& E& _! ~- a
import swarm.Selector;
9 H1 Z4 T. H* [2 s6 dimport swarm.activity.ActionGroup;
3 u$ o- n, M# y ?4 @7 C* d/ kclass Agent {
3 z4 U/ O" V# \: j char id;
& E a" E: w# r, {% n! j Y2 o1 k6 R7 L0 ~4 v4 L
Agent(char id) {
9 O8 c. c) c/ A9 c0 v' }$ l1 P this.id = id;( q' U( V6 p; R% e5 g L5 N
}
2 l5 F; Y7 y/ }' {
) q. l& v3 [, L+ J+ I/ O public void agentStep() {
1 B! H) N& |9 y9 A( }* p$ [; h System.out.println(id + ":" + Globals.env.getCurrentTime());2 n+ W5 k( P% ?; J1 N
}
8 {& ^1 U4 C' G& Q}
7 c- G4 s! \3 _0 ]8 j+ j. \
2 \8 p( N. e& ]& z) Tpublic class ActionGroupDemo extends SwarmImpl {' U" T! {+ K0 o0 p B$ X
ScheduleImpl schedule;
3 n/ U8 R) k- @6 Z; [# r2 B0 O7 _ ActionGroupImpl actionGroup;2 z* w# X2 G2 x, X
ListImpl list;4 n* I5 x: ?! |7 b4 }) n$ K
char Id = 'a';
1 `; ^# Q, ~( P
2 c& i! r: A6 t6 q ActionGroupDemo(Zone aZone) {
7 }/ u# H- `, E1 x9 A" V9 _( u super(aZone);5 k: e7 q$ v8 \: R
list = new ListImpl(aZone);$ j2 W* _" y. t- r
swarmSetp();
: a5 Q4 |$ G( j- I% t4 D8 |& k" Y/ ?. t actionGroup = new ActionGroupImpl(aZone);7 ?4 ~% @0 j2 @- t: L3 A; t
schedule = new ScheduleImpl(aZone);
9 I; D0 K- N7 C try {
+ Z+ I$ W/ f* |( [$ V$ V3 v* J Selector agentSel = new Selector(Agent.class, "agentStep", false);8 w4 I- t! s. h5 d, t7 ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ H. g+ L, X2 B' Y
# J9 p& G/ u6 G l- {" T4 v2 ~0 ]1 K actionGroup.createActionForEach$message(list, agentSel);
: ]# k1 ~, z9 h" T6 b actionGroup.createActionTo$message(this, swarmSel);
) X( j" Q# ]+ K8 P8 N schedule.at$createAction(0, actionGroup);9 |; t7 f, i8 u* e, @1 F+ C0 Z6 J
schedule.at$createAction(1, actionGroup);- L5 T3 o! T5 y% l7 |' W
schedule.at$createAction(2, actionGroup);( L! r" p) X4 ~8 [& e
# A; J' ~. \6 G' i% r
} catch (Exception e) {; f) a9 {: \- ~6 }8 D
e.printStackTrace(System.err);4 }7 P; r, E% l M; ]$ ?+ R( t( ]7 W! j
//System.out.println(e);
/ E- _4 F" K1 A2 F/ v, D# q System.exit(1);0 h8 G; O: i* t4 O7 r7 a% H# _ N) O
}
. |: Q( P8 V% K) r" c! z
$ Y: a* Q/ q, K
2 m& j% R" A4 J, T9 w( A" k/ _ }
8 k- h# Z+ X$ ]( f6 B( g1 [; y; w" t/ F" ~8 g
private void swarmSetp() {
4 d: L) s8 [4 n list.addLast(new Agent(Id));
# \! Z9 L5 s- K) K Id++;. T0 O5 y' j+ O) P; X7 c* ^$ h
}
5 W- g6 C( o! f$ j' v+ I+ t
0 D( z$ X$ A, G) m6 Z; `9 C public Activity activateIn(Swarm context) {5 d$ }, w) p. M" J- j( f ?# X
super.activateIn(context);% q3 Y. R. l" @7 c4 p6 _
schedule.activateIn(this);- {. T: {1 L8 w2 k9 H5 W+ S
return getActivity();
" i; V3 W0 [0 R* Z. } }
6 e4 Z7 J- m4 |# W7 O% c! m
}, z: B2 U+ M9 ~: C% j public static void main(String[] args) {
% S3 C7 U+ R, l+ x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 O! H+ i% z. [/ [- O5 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# B, I5 Z# I" U! [) x/ ? swarms.buildObjects();
- t& L( [7 z9 u3 L, B& }* y; X7 t swarms.buildActions();' |5 o1 y4 E* v5 G
swarms.activateIn(null).run();
( c" p7 O' |" H+ U }7 ]! S) p3 T/ D: q; d/ u# I" E% v8 s
; t% F! f! W1 S4 t} |
|