|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , p3 ~$ y4 x, W* {( g5 E$ [
9 m, p7 M3 p3 z# |, M# i g r, B' n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* f' `' o7 s5 w. `. R& F- _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" r3 c" }- h$ Dswarm.SignatureNotFoundException
$ x. c' s8 b$ V0 \. [2 H at swarm.Selector.<init>(Selector.java:76)
~- f3 W- G' R8 ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ N5 P8 Q$ a9 m; v& W at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 Y/ R9 ^. r' \) T+ P5 t. C9 v1 d6 A6 \: u( P. z Z5 ?- G3 ^3 E
/ T% A6 a" ^7 y4 z9 H9 }: n# n, Gimport swarm.objectbase.SwarmImpl;' T5 F1 X) S! p1 v
import swarm.objectbase.Swarm;
$ D# C* z3 I1 j5 M$ l1 N3 s7 uimport swarm.activity.ScheduleImpl;: C" i/ m" ?$ A9 V+ r
import swarm.activity.Activity;
1 N1 d4 x" e9 ~- }; h; zimport swarm.activity.ActionGroupImpl;3 w" P6 L; H. P8 c3 Q6 {+ I2 l
import swarm.collections.ListImpl;6 J5 S# z) y8 t# i4 E& q9 p' q
import swarm.defobj.Zone; & j q: N0 v. ?: E+ T$ d
import swarm.Globals;* z; a+ k7 F% v& P5 ]
import swarm.Selector;1 c+ y) L- M |- C
import swarm.activity.ActionGroup;
+ S9 \5 h- u; Q0 `5 ~class Agent {" U$ D4 Q- h: o; M
char id;( H7 y' i2 \. p5 H4 L' v; {# ^- l
) c& d6 `$ {" |+ W+ o8 g
Agent(char id) {: M: b7 @5 }3 p8 Q3 z. B7 {
this.id = id;2 z# V% W ~5 q! ?1 D7 i
}" v1 i2 k7 r" U# g2 W) m! v
, p9 t1 e6 N9 h/ l
public void agentStep() {
4 ]7 p- U' d7 z# K* r System.out.println(id + ":" + Globals.env.getCurrentTime());
, ?6 i( C/ m( [ }. ^- q* z! v- [
}
4 R. f5 l0 d1 M# [
7 z5 o/ R6 L( y- D- d" |2 k+ R+ [5 Gpublic class ActionGroupDemo extends SwarmImpl {
0 o( Q2 }) q8 V0 d% E a/ R ScheduleImpl schedule;$ e! k7 I# o4 G9 U
ActionGroupImpl actionGroup;3 t; G# [! k D9 |- J; q2 F* l
ListImpl list;0 |0 ^* [4 b: F" ]* u" i
char Id = 'a';
- ^4 U* P( O9 r+ m. T" u% n, J9 G% _4 a* ]* p
ActionGroupDemo(Zone aZone) {
% \# l2 s$ {1 S0 P7 y super(aZone);/ O; s; H5 |; C% t' d! Q
list = new ListImpl(aZone);3 C* P( j3 ^+ \/ Q
swarmSetp();
" d7 L* U, S& B d% e6 C actionGroup = new ActionGroupImpl(aZone);
+ h, x0 m0 x& N' c" F/ X+ `& ^& k schedule = new ScheduleImpl(aZone);7 c0 D9 q3 U; u0 [
try {2 S2 h! M: y3 j% I- W
Selector agentSel = new Selector(Agent.class, "agentStep", false);& u7 Y& v: r) |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 C# e: r6 \8 z/ j
( F( @) Q8 G" E6 y% D* @
actionGroup.createActionForEach$message(list, agentSel);2 k( ]: t& [! X T* `# d
actionGroup.createActionTo$message(this, swarmSel);/ @, d3 X+ u; k3 R K
schedule.at$createAction(0, actionGroup);
6 r Q2 g& T- Y& h9 E% \8 o/ m schedule.at$createAction(1, actionGroup);! S' s3 g/ u* `! F' Q" O7 W
schedule.at$createAction(2, actionGroup);
9 B. [0 p* m+ E* d0 `& a/ j7 A& s
} catch (Exception e) {
( Z0 X' [( x3 O% T e.printStackTrace(System.err);$ M, t, {' a9 n3 V
//System.out.println(e);+ n; z! t; c# z0 N& m
System.exit(1);
4 X/ a8 g2 `. _8 [0 X }* F% a) G0 o E. H9 b
/ G8 R4 ^2 D) ]% `+ r! h
3 x5 \5 x7 `0 g% x6 f: U( r }/ d8 r& C4 Y% F0 U. {, ]! o1 \* l
% q3 k0 [5 _% Z8 T2 h3 q6 A7 }
private void swarmSetp() {
8 @3 L# P! E2 Z% K i/ g% U1 n list.addLast(new Agent(Id));
4 f* p$ K) X; w( g/ s, W d Id++;* N! h0 G) ^6 Y$ G
}' W' C1 T0 O8 q& O6 a) d" N9 K# o
M5 D+ K# U7 O) m public Activity activateIn(Swarm context) {# q5 @$ Y# V6 o. v6 u
super.activateIn(context);
/ R% m5 R$ _) L. F. i9 v- L3 k schedule.activateIn(this);( @8 `" d; J% b: x+ w! s' L g
return getActivity();
' y/ {' s" ^! _4 f- S5 d3 m; _ }9 u, R" t- K4 o$ n- N# K' v. e9 [
! K! h0 G+ X1 _7 ^; _5 i; M6 a% [% X public static void main(String[] args) {
, B2 b" B+ J5 ~. s0 ^' b2 s! Q# i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 {* B8 F* r7 }. u! U X% y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ o: `8 Y' C# i; V
swarms.buildObjects();
4 p7 ~. v! j: q! L. h, F. o9 I" L swarms.buildActions();
[# K7 F8 i, F& D3 h4 V+ a! v6 J. G* L swarms.activateIn(null).run();
% w, n% f: n4 A8 D1 z8 i3 b }
% u3 T5 T; m& @- m. e# P; H5 w- v/ @/ W
} |
|