|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 K' i) a1 ~( @
1 g' y# U0 w1 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ v- E% a. ^) `; q" D% S& G' ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# c8 B& M4 i% d( U
swarm.SignatureNotFoundException
& _9 n. m- n# }7 i at swarm.Selector.<init>(Selector.java:76)' I0 O7 p; C5 ]1 u/ H Q& A$ h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): {. G5 _* Q7 o7 x% c
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, U' v$ Q8 O# }) k2 {! s; H/ C: @ a; Y/ f" z+ @* {+ ?
/ g8 e( u+ U2 ^) c+ Zimport swarm.objectbase.SwarmImpl;
' f3 x' |6 Y6 Gimport swarm.objectbase.Swarm;* A/ }) ?9 h6 f6 k2 N
import swarm.activity.ScheduleImpl;/ _" c" Q# n9 X. s3 O! l- L/ m" g9 g
import swarm.activity.Activity;
6 z* y6 t+ D! C. G8 X) qimport swarm.activity.ActionGroupImpl;9 {0 c0 k! }# c+ U
import swarm.collections.ListImpl;4 q& G9 k1 `# J- W3 Z) E$ r
import swarm.defobj.Zone; 9 F" p4 Q$ D, Z- Y
import swarm.Globals;
3 A S8 V# _& z- p0 Oimport swarm.Selector;7 H% f9 l9 |6 C7 T' ?% [; { N
import swarm.activity.ActionGroup; $ f% P+ z. c4 N' |- D
class Agent {
' I" A4 k! p- u9 B% P char id;* \) r% y. j2 A8 j
" C6 |& E$ b1 M1 x, K
Agent(char id) {# `+ P, w# ~* L2 [8 k5 v( A, ^
this.id = id;7 q9 [, K' Z# M' U
}
1 l2 R4 x2 L) k: N
: ~# @- C$ `* E6 p, L+ {5 ] public void agentStep() {
( @+ X5 Z" O% u$ J, K% i System.out.println(id + ":" + Globals.env.getCurrentTime());
$ N1 u, {: l7 Y7 u# |- y }
" [6 V0 D; O G4 v}
G" L! W1 N, V* s; f6 a4 X' t2 ?& [, d* A( S* T3 F
public class ActionGroupDemo extends SwarmImpl {
# e5 X& x# X+ f; u( W6 \ R1 s ScheduleImpl schedule;
5 Y, d& z) m0 ~" Y9 D4 ]9 X ActionGroupImpl actionGroup;
1 F( V. D' L9 J1 u2 k) N) ]3 ] ListImpl list;; ^- c5 L6 L) @' ?: ^1 _% O
char Id = 'a';! _ h7 \, E9 X5 y# J
2 {! {, T) u* B" ?6 n( Z8 u3 l6 b
ActionGroupDemo(Zone aZone) {* L& M" |& @: ^) t
super(aZone);
+ X" ]3 [ C" s x list = new ListImpl(aZone);
* [6 u7 f3 I0 \! e1 T swarmSetp();
) Y3 ^% o8 L* @ actionGroup = new ActionGroupImpl(aZone);
4 w$ c; y* V9 i9 W9 ]3 S8 F schedule = new ScheduleImpl(aZone);; K. W3 v, ^$ p
try {
9 ^7 N7 }& ^; x5 T7 H2 B$ X3 v: a5 J5 d Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ h- ]: o I/ V i3 G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* z+ u. {1 z/ `: u B
' ^7 M9 }& H, ~ actionGroup.createActionForEach$message(list, agentSel);' n" g! X* _& u% F
actionGroup.createActionTo$message(this, swarmSel);
: G: {7 T% F: `2 P4 A. g0 Z schedule.at$createAction(0, actionGroup);% P+ h: F' u. x& L8 b: q; I
schedule.at$createAction(1, actionGroup);
+ f) v5 C$ a& } schedule.at$createAction(2, actionGroup);
& [ J( M, W/ A# v' |3 i* Y7 A7 u% H8 V3 n
} catch (Exception e) {) s) o1 ~: V, k0 V, P; f
e.printStackTrace(System.err);' k p+ V. J0 w( i& Q
//System.out.println(e);# ~2 z, _5 o8 i
System.exit(1);! `) I# G& s* `3 ^# z" `. ]
}6 i O8 B5 w' B; s9 b% c) F
: n) H4 R3 Y" e2 n- g X: x2 l5 H8 G/ b2 q. ~
}
4 H1 j. u: f, J4 M- J+ I4 k; o$ N
9 a" C0 y- B$ L( H; Y: q private void swarmSetp() {/ s8 T* U! C* l% H& t& }
list.addLast(new Agent(Id));
9 B6 x' L4 c) Y% D } Id++;- ~& F# B; z% n
}
5 n# E( b2 @2 {1 k0 P6 |+ M1 p( Q
4 o$ j7 x# }- v; d5 l/ S2 d2 M public Activity activateIn(Swarm context) {
' T. C$ ]' q. K super.activateIn(context);6 s* @! \5 F9 A8 m& B; s
schedule.activateIn(this);/ Z% f/ N- V, { n$ z* |
return getActivity();$ N5 X6 n8 g; d3 @1 Z0 ?+ ]
}: f! t* E% p2 f+ ^( O' N
/ o& ~5 m4 _' J* @5 U7 w public static void main(String[] args) {
% F! J, {! k2 o/ Y0 u( M1 k% | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 c5 @. y3 K% F6 L+ P
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: ]- n# T3 G- R+ h8 }: h8 \ swarms.buildObjects();7 @: m0 R4 w+ d/ Q6 Z2 O
swarms.buildActions();5 Q% L: M9 k. x
swarms.activateIn(null).run();
8 Y; i! j( S, ] }( ]" C( K+ k. f7 G
3 a7 e" ?/ z* g: u. P( L} |
|