|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % t! `5 F" ^# T6 h
. {: q) @& _9 ~ i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% b" ~- n6 U3 Q R+ R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 ^9 I* u, |( T0 G# V! A
swarm.SignatureNotFoundException
) W; q5 I3 p5 k at swarm.Selector.<init>(Selector.java:76)& E( B8 `! Q- u# ?2 Y6 i( n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 M# ~ G! Y& C* ]( ~4 U! [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 `5 ]/ i: ^% o# t
. A; G9 X7 k" ^
9 P5 R# R1 l# {import swarm.objectbase.SwarmImpl;
8 W8 D, W/ M' \import swarm.objectbase.Swarm;
/ b' J) F6 n. z! fimport swarm.activity.ScheduleImpl;
7 M1 O; ?, Q/ E7 ~import swarm.activity.Activity;
`+ H" I$ X) T: Wimport swarm.activity.ActionGroupImpl;
6 B$ \4 M! H2 limport swarm.collections.ListImpl;; L; `. Q! Q; L
import swarm.defobj.Zone; ! A5 X6 t- H$ m4 W
import swarm.Globals;
, |, n) P7 N; }- M* Cimport swarm.Selector;5 \4 Z* B1 F6 A$ {. ]
import swarm.activity.ActionGroup; 5 P/ D1 g: o H3 d$ g. K% `
class Agent {. D& `# \& K# D+ y3 @) _/ Z+ _7 D( \
char id;
5 ?( M. _ D7 h$ E4 n# ]4 M! D4 @) O
Agent(char id) {
, M- y, ?# k+ ]% C- g7 ~% Z4 D this.id = id;" o0 u; c: ?5 L/ j6 k5 A1 E+ V
}3 l/ X! E6 R [0 D/ c* L9 ]1 C
% u- R- y" Y4 s/ w- Q public void agentStep() {. S I( \% X( ]$ s X8 C* ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
' \9 Y! q7 j6 O4 d! Y6 n F/ T- u }- i/ ^/ `* D+ `4 M
}
8 D5 P% i# I( m. j, f" j4 ^/ c6 T1 E" \3 V, @. ]2 O* f4 d
public class ActionGroupDemo extends SwarmImpl {
" y& n* R) ^! o6 S ScheduleImpl schedule;: O0 Z; ?8 [& d* j
ActionGroupImpl actionGroup;( O2 Y# y5 j' x& j+ H" ^0 R
ListImpl list;% W- @5 o% z& F6 B! q
char Id = 'a';- Q+ l- z: E: t7 Z" R! x' ]
( s: M( v0 z/ J8 f D+ _- V
ActionGroupDemo(Zone aZone) {
9 z( n9 g/ r/ v4 } super(aZone);$ m3 u7 Q- ]0 E* I! w' _
list = new ListImpl(aZone);& |6 h% W6 D' q" | F5 c& N
swarmSetp();
" c3 x5 f- a7 \, y, ]4 T actionGroup = new ActionGroupImpl(aZone);
% |9 l. j7 u2 C schedule = new ScheduleImpl(aZone);
$ U) ^; x- J/ T- j7 [7 Z try {: C* u, D" j$ A% h
Selector agentSel = new Selector(Agent.class, "agentStep", false);' X% @4 N% j% C6 `( n! C, s( }8 T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 v; G$ n/ T, a9 R- A- x2 W |
5 {" T9 E' G1 U# W actionGroup.createActionForEach$message(list, agentSel);
& L1 h- ^: g- q, p1 } actionGroup.createActionTo$message(this, swarmSel);: l4 C' t' a4 E: B# S1 T
schedule.at$createAction(0, actionGroup);
/ C* s/ Z- \% |- S schedule.at$createAction(1, actionGroup);
7 J# C4 B! k" _- Z' C schedule.at$createAction(2, actionGroup);
9 ]3 ^. v" u) o5 G% K6 J7 V3 s6 j* U$ d: V& ^- y# f) p& Q/ R
} catch (Exception e) {3 V/ W8 o5 [; x) r
e.printStackTrace(System.err);
4 [- X! o; q9 p9 v; j/ c$ P //System.out.println(e);
O4 u7 p, i+ y+ {) ], D System.exit(1);
1 L$ I! b5 ], y1 f) z& ` }4 p h0 ~3 L( ~
0 Y& R5 T' t$ N( _) X, h) p6 g" j4 o8 X8 e" z2 l4 k5 c
}
7 ?. S. M/ v9 d0 T- g+ e# K# C2 |' b. ~% D4 W5 s: ~; ~& D+ e
private void swarmSetp() {. r5 F$ d5 O) ?4 S, O
list.addLast(new Agent(Id));
4 U8 S- S6 N' b/ O8 i; Z4 L Id++;
& E3 u7 L2 d3 O7 ^% W% i8 n }
+ r9 @6 W' F8 h" v* D: `" R7 O4 t, d4 }% z! J3 g! K( T& G6 x
public Activity activateIn(Swarm context) {- W: E) w8 X0 ]8 o" A5 E3 U" ~9 D
super.activateIn(context);
/ F, }0 S( ]9 ~7 p0 t5 ^( U8 B- J& Y1 d schedule.activateIn(this);
6 B# \# X8 T5 s$ M- {( S return getActivity();
! b8 e, B6 V- {5 d( |4 K }) Y5 v0 v# o7 z& ~" i, {
& i. j y* m% h
public static void main(String[] args) {$ y: R% y, m$ @5 W9 V" t9 E* v, R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 [/ W5 W& S% }7 ?, F* ^0 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 D& S0 \$ H! G5 T swarms.buildObjects();
$ m }, z1 b' k- W8 n/ }$ h swarms.buildActions();
; J$ P N) D. d5 i swarms.activateIn(null).run();
8 Y% G6 h# _, f5 u$ F6 b% n9 b l- H }' b7 Y5 M! H) y Q$ {& y
( C/ D2 T, y7 T+ |/ \} |
|