|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * Y9 C0 B" d) v: \
( v# X' `& [. i7 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) A6 h1 R/ j3 _" F2 v4 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ x5 h+ b; G& r4 U
swarm.SignatureNotFoundException! V7 q4 Q' R+ H- \, g l
at swarm.Selector.<init>(Selector.java:76)
1 ~% Y9 `7 N K/ @$ C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 R$ x. t9 ?! b' ^6 @
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! T% M/ f, N1 e8 C; I1 p- L; @1 y+ A' Q: A3 S g
7 A1 R4 H H( J- G6 ?- `# U% Aimport swarm.objectbase.SwarmImpl;3 M# M7 x% \0 B( k
import swarm.objectbase.Swarm;
4 g7 j' W' R7 P H% pimport swarm.activity.ScheduleImpl;
2 R9 f9 ?/ H2 A: h( U8 gimport swarm.activity.Activity;
) {. h0 [7 e1 e9 i/ t% pimport swarm.activity.ActionGroupImpl;% n3 P* ^% g+ m `; y- _& q. s
import swarm.collections.ListImpl;
/ K! y* j4 _6 \import swarm.defobj.Zone;
8 }4 @ z/ ?' S$ n# B Rimport swarm.Globals;9 W$ C# h' T4 i0 v7 o5 F! c
import swarm.Selector;
2 v, R4 J% |# }) r: o4 P5 A# y cimport swarm.activity.ActionGroup; - y! O# K/ O$ `1 ^6 D
class Agent {
& ^5 u- ^; Q5 X char id;. \- h+ t# L+ h! w6 I
- o. L/ o; c8 D/ F
Agent(char id) {
& D4 N( Y* s8 c/ n, s this.id = id;% s$ K0 M' m9 U5 T7 D7 s9 w" q
}" C" m G9 F& u+ l) S
! S3 s! m7 m- J; B1 G
public void agentStep() {
3 \9 E& x; y( v' h System.out.println(id + ":" + Globals.env.getCurrentTime());0 B3 n- U Q7 _- C$ Q/ r# z2 L" w% I
}
0 r" q g I" ~7 N}! D$ a) T& ^, h
3 d8 ~' F4 W; h4 g; q/ c
public class ActionGroupDemo extends SwarmImpl {
# a/ f0 z; a' `- P7 G% x' M ScheduleImpl schedule;
( Q. A% W% D6 m) A$ @ ActionGroupImpl actionGroup;
, J9 W8 b! o9 t4 a, I0 J; n ListImpl list;4 T, \& i/ N2 `- a
char Id = 'a';
5 ~4 n9 Q# b$ n- f' D D- a4 s! P8 x( F/ [/ y/ J
ActionGroupDemo(Zone aZone) {
" u; o! [/ L. p; ~7 J9 J0 C3 w8 J2 D super(aZone);, O9 k7 }) n( R5 N ]
list = new ListImpl(aZone);( S9 P/ q9 d3 ?' v' w- i9 |6 t" D( k
swarmSetp();/ k# }& S* U/ R
actionGroup = new ActionGroupImpl(aZone);: ` p# W0 z! X$ R
schedule = new ScheduleImpl(aZone);
6 [3 O: y' C5 @ try {
2 {* S( R7 s9 e0 E9 M Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 s1 [. r" H5 z7 Q+ u' t Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. T7 D$ Z- s3 N + D$ ]/ ^1 O6 J
actionGroup.createActionForEach$message(list, agentSel);
5 v3 E- @1 X( O' _ actionGroup.createActionTo$message(this, swarmSel);
0 ^. \. u% C. w% b schedule.at$createAction(0, actionGroup);
" {7 B, b; B H4 @- w schedule.at$createAction(1, actionGroup);
; B u: F# U3 K; S: J& { schedule.at$createAction(2, actionGroup);
8 V2 { D; N& X9 j$ F, E
# F2 ]& ]# W! k) }$ \ } catch (Exception e) {. c* C% ^5 N1 I8 q" j1 U% J5 \( X' L9 M) L
e.printStackTrace(System.err);( E7 d. \) B1 ^- r. e# Q' b5 g. q& v
//System.out.println(e);
, x' E; ]4 f: u' j" |, v+ ]* K& r System.exit(1);, S' j9 S% B) w4 u W8 t; I8 v
}0 ]# ^9 U1 V0 x! V- T1 u# J2 |" n
# [3 _: j& @6 K! f
0 _) b& F$ t# S$ S, f }8 P2 C# y7 p; D
% d; S$ `2 h9 G0 W7 D, c( O
private void swarmSetp() {
+ q2 l+ h4 z: `& W9 K, E list.addLast(new Agent(Id));
; U& ?% z* _8 ^* g$ N( a0 I) B Id++;8 y* o8 W4 O: d$ w7 n$ V% _& p
}
( z$ K m6 w! m5 w2 N: _
2 g9 h/ E& p; z. Z7 B: t public Activity activateIn(Swarm context) {, I+ g |9 `- V! v
super.activateIn(context);
& V. H6 k' J3 l4 E schedule.activateIn(this);9 `1 @; o+ d$ E6 j
return getActivity();
9 r4 K; m- u/ g; J: o }
S" X4 Z% R% s" Y' C" x3 |! Z; [# y. D1 m% r
public static void main(String[] args) {/ ~; s: I( c' S% I# J
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 F# A' M2 ~2 k1 | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
z: I( S/ S v$ H6 R* u& } swarms.buildObjects();
, C/ R# g/ k! V4 F6 F swarms.buildActions();/ [1 ?( X. @8 C" B. [7 ~! d M2 w3 G
swarms.activateIn(null).run();* }8 j7 ?5 |7 y9 s" C M
}
) x4 `; F9 o; m: U$ L ^5 m: z* @& J% Q7 ]8 ?6 y
} |
|