|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" y2 R! r4 W: w5 w3 I* W" ?6 d- F
! N% |" ^4 ? Q6 {0 Y9 y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: m" F7 C& f4 n3 H ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 M7 N% y4 O8 Z# l, bswarm.SignatureNotFoundException
1 b" m7 Z L0 H% K% E at swarm.Selector.<init>(Selector.java:76)
6 N* D1 ?% T7 c7 a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 G5 Z P/ x6 ?1 [* w# C at ActionGroupDemo.main(ActionGroupDemo.java:67)
M, C% W; \* d% R; F4 }# ]# n0 F+ z9 M
9 B1 M' ~5 Q& q1 W1 ~: h$ H
import swarm.objectbase.SwarmImpl;, q: c/ c3 C$ D3 w; L, i) y( ~
import swarm.objectbase.Swarm;$ `( H4 _4 w2 S9 ~
import swarm.activity.ScheduleImpl;
0 S; @; g2 a W# h# y. L5 limport swarm.activity.Activity;
3 Z2 q! z6 p4 o6 N: _. J# _3 f. limport swarm.activity.ActionGroupImpl;5 Q. U( K, w+ n- @' g. \
import swarm.collections.ListImpl;
) q, R( T& R: qimport swarm.defobj.Zone;
$ u K$ f1 n' i% R7 i& l2 ~0 ximport swarm.Globals;
! ^% g7 f0 J/ O H, ~8 Vimport swarm.Selector;* \/ w( e" M2 D @$ j& d9 Q
import swarm.activity.ActionGroup; + @% ?9 B( v4 i/ V' E
class Agent {; G8 l2 j' G p6 F0 c8 ]
char id;
( y/ g, T+ o: k7 @7 A" g0 m
5 d ?# v5 q' \: _! x Agent(char id) {8 K# g. s) L+ S. e; W
this.id = id;
) X: X/ ]" z" U5 G1 U }
2 U; n" k" ~# @$ w. v4 ]! m- U$ s' D1 ]3 _1 M% }
public void agentStep() {2 A) z2 f, k9 W& _& P) u. c4 }
System.out.println(id + ":" + Globals.env.getCurrentTime());& E/ T- B! Q& z2 m% r
}7 i9 i5 K0 f5 s" S- j
}
$ `' e* P( D! N3 n. q) X/ u6 \2 T: R7 s
public class ActionGroupDemo extends SwarmImpl {. b. t# y' P6 X( N
ScheduleImpl schedule;# }8 i# @$ D" Y) _% N! M- @% @
ActionGroupImpl actionGroup;
$ C" m' x. i' M1 |" m- q ListImpl list;' f. s. M$ `* D+ K
char Id = 'a';, q8 s* Z7 M7 }1 l, b9 e. {
$ t' a, p+ |/ b, g# @- X4 i ActionGroupDemo(Zone aZone) {. s, u9 {0 I/ ~' L1 o; o6 ~+ i+ K& r
super(aZone);8 x5 K: ]5 N3 P9 y
list = new ListImpl(aZone);" }" I' B2 L" n& E' C( e# z8 ^3 c
swarmSetp();& H. p) A1 N4 A
actionGroup = new ActionGroupImpl(aZone);
8 M" J( y. K' F# r schedule = new ScheduleImpl(aZone);: p# V( a6 R! I2 B8 `! Q
try {
. Y; g0 c# l! ~0 o. e Selector agentSel = new Selector(Agent.class, "agentStep", false);1 e2 P5 [* i0 U+ K, k1 q3 T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ ~/ k+ D; n( y7 M7 K+ @( Q
( O" \2 @3 m. r$ s$ f actionGroup.createActionForEach$message(list, agentSel); F& T8 h9 C- y3 R" F
actionGroup.createActionTo$message(this, swarmSel);
$ I+ Q9 e7 @2 c1 F# _ schedule.at$createAction(0, actionGroup);
, p! `( W5 r2 w schedule.at$createAction(1, actionGroup);
; W5 k6 V, g4 c% I" ^ schedule.at$createAction(2, actionGroup);) B6 F( j& e+ V& {3 E; Z" K
: a9 x- [2 e) _" t" ]9 {
} catch (Exception e) {
8 y7 R8 o4 R8 I# f4 ]/ s% D, l e.printStackTrace(System.err);
7 W) [) f3 V5 m5 X! i& X) l. ^ //System.out.println(e);' y1 v0 [3 e, a- O+ _& @ a
System.exit(1);& C/ J/ \: R: t! X8 T! y
}5 M9 ], b) f7 E1 K0 z( S
! `! M" ~$ I/ l9 v' e4 f# w
# s5 w7 o, V) S4 e; P, @$ f- C }
' T+ k2 r D8 w1 @& K1 f" p1 _, F0 f# ^: f
private void swarmSetp() { T6 w, r9 M$ d% O$ l
list.addLast(new Agent(Id)); r* _" F5 P# A& {% @5 r2 z0 b
Id++;
+ ?4 ^' r9 y( H( q% t- G+ u }9 m2 o5 y4 r+ t9 G: G2 H6 ?
" u. Z) q' S, ?+ a/ c9 ^
public Activity activateIn(Swarm context) {' V* f* B4 W/ a0 V
super.activateIn(context);5 n2 }7 L* K! O$ X/ ^
schedule.activateIn(this);9 r0 L8 O' t7 N0 K
return getActivity();" N5 y3 @' }+ O3 i; f* q, B% Z3 E
}
! m2 _* c; j' e2 K6 e1 |+ w: v. D" X& n; l' j
public static void main(String[] args) {
1 ]% N7 A# v9 `: X% D, e' O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; L1 ~6 \) ^ C4 J4 f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: k$ ^0 M& w `" E F swarms.buildObjects();
( W3 H% ]" h8 a( ^ swarms.buildActions();( v" o' \2 h3 E5 Q4 y% C
swarms.activateIn(null).run();
$ Y9 O( P# [! V8 D. Y+ W5 d p }
' z9 v0 R6 ?* E3 d! S
$ J* w2 O3 ^6 I+ m} |
|