|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: y( `/ {8 E6 Y) v# p3 m0 t3 y( U
" U8 V- H% v. \$ F) Z: O; m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. x: \; \' x/ L2 ~/ S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
s7 i2 n7 F% H3 _1 Qswarm.SignatureNotFoundException) w6 Z& ^+ r' P2 F6 E
at swarm.Selector.<init>(Selector.java:76)4 |' h8 |9 m! {6 E- g# x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 Z- \+ f/ J6 \+ w8 V at ActionGroupDemo.main(ActionGroupDemo.java:67)( S- O2 i8 Y( N t# S1 I% i- |
( U# a$ X2 L6 `+ r( h% Z' h- V- x4 I' _. z# Q& S5 P4 ]$ H
import swarm.objectbase.SwarmImpl;
% w w! m% p0 @. d/ d: ]; [import swarm.objectbase.Swarm;
5 s/ o7 k# f! Uimport swarm.activity.ScheduleImpl;& c' b: u/ T) k) g
import swarm.activity.Activity;
U$ p: B* i' Y( ^& `/ V4 I! _import swarm.activity.ActionGroupImpl;
4 d6 F% p# t w' yimport swarm.collections.ListImpl;
+ A8 o. ?( [9 z/ _import swarm.defobj.Zone; 0 \2 k- l9 g9 H7 E
import swarm.Globals; x# J8 t6 A- i
import swarm.Selector;# z( H, K& Y9 G3 g: T8 q) ]* d
import swarm.activity.ActionGroup;
" L3 P6 @! z$ M( Xclass Agent {
# C% A7 U1 b. a char id; g& D, N2 v- v9 B6 _* I
: p3 C% X- F0 M x
Agent(char id) {0 C9 k2 C& { y
this.id = id;: V! j! m' |0 A4 n7 O7 m
}. R, p' L f/ X( y- _9 \% z
! r4 p# }0 d. G3 `* d8 r public void agentStep() {. X, E( z4 P& S Y; C1 H8 G% U$ \
System.out.println(id + ":" + Globals.env.getCurrentTime());" n, X+ f' G1 i0 N% T1 ]
}
+ A$ f: y* ~1 {}3 k! B+ @* ?* D. s- r$ Q
$ r! E/ K1 I* D- rpublic class ActionGroupDemo extends SwarmImpl {9 [0 Y# c' E J7 ~
ScheduleImpl schedule;2 k) R5 U4 h: ?, y& ~
ActionGroupImpl actionGroup;
- ^+ d: k3 b$ }* }/ d ListImpl list;8 y( a6 h% Z, `) {% |. _
char Id = 'a';
$ `- g4 q* c( E1 N- y; W, _% Z! ^2 x, t
ActionGroupDemo(Zone aZone) {. v+ a4 V# ^: C
super(aZone);7 x& K) } C4 q
list = new ListImpl(aZone);/ t, J; N2 I! d% h2 g
swarmSetp();
4 A( N4 s! B! C: J+ M% t actionGroup = new ActionGroupImpl(aZone);
# @6 k$ h# F3 B5 u. k schedule = new ScheduleImpl(aZone);# Q& ]& s [* b/ U. M" `
try {$ d( u& a& p) j
Selector agentSel = new Selector(Agent.class, "agentStep", false);, y* I. R0 l6 y* s. R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% [' b) G3 V$ ~- w1 p
m& X. q# H+ N D' y* M& ] actionGroup.createActionForEach$message(list, agentSel);+ i. A8 A& x' b$ E6 ~
actionGroup.createActionTo$message(this, swarmSel);
: _& M! R3 {9 i% Y schedule.at$createAction(0, actionGroup);8 q- y! G5 L+ V. b
schedule.at$createAction(1, actionGroup); ?5 g& U% @+ y) Y, t; |
schedule.at$createAction(2, actionGroup);
) ~. E5 l8 N% I
, n0 F3 m$ v6 O+ f+ o } catch (Exception e) {) h# U- {8 B# w; w; x' M1 ~; S( y
e.printStackTrace(System.err);% p, O$ v# x8 f! G
//System.out.println(e);( n6 @( D& n9 ^( k3 k0 ^. U
System.exit(1);
" E& ]6 {, {8 C }! J2 @, d: `: C. F' D3 t" v# U
@, }) [- n- ^; U2 m8 Z q' C7 P
}
+ z+ g. u, v& m8 Z5 f# \) [7 b( T7 A; |# n7 W
private void swarmSetp() {* ]2 l' R* @+ l0 @" g' f) c
list.addLast(new Agent(Id));
2 A, s' E/ N" g1 z; D$ F Id++;
2 F) o- ]: P9 R3 g! M2 W4 m }- Y7 L' ]5 a" u" u# W
/ p5 P; K& g% B* D( a$ K- h0 w* Z public Activity activateIn(Swarm context) {
) R% d2 A8 J7 H, d' U+ K! o6 C! p super.activateIn(context);
. I0 `% d7 S+ W3 L9 U. } schedule.activateIn(this);
& ^% Z& r+ Z* t, ~+ d return getActivity();
: D: S; F" v- F }) @9 \5 C- |1 b; \$ v2 z; m8 G
. s9 D4 O0 v7 X5 ?7 s& o: F! U public static void main(String[] args) {* b; t& _: s$ h( v" Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); \1 k+ o2 T; L. Y) f9 _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, y, f; _$ N/ [! n% D* [7 j& G
swarms.buildObjects();
4 Q0 o7 l- C; U1 A7 U+ } swarms.buildActions();0 O- I7 {" k. R/ P; P e# L
swarms.activateIn(null).run();' A% t2 v/ g, v# U
}6 F8 C& j% |7 W' J2 `3 t
. w. S, `4 g) e} |
|