|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! {9 N- k% r' S
]1 C9 v2 O& O8 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) X$ f, O- a& ^/ s& z, j7 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 f* X! L6 `; C3 q# Y
swarm.SignatureNotFoundException
2 l; d9 |. x$ e3 b at swarm.Selector.<init>(Selector.java:76)
& T0 [& W, z! M at ActionGroupDemo.<init>(ActionGroupDemo.java:37); B2 A& u. I; }4 w2 F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 g$ W+ }) X# g2 |* T
) M: X7 z2 x0 |. x* n6 k7 C2 r8 p2 x$ s& C# P9 Z) `; m5 z. t
import swarm.objectbase.SwarmImpl;
7 P3 v& f' _9 t$ b4 Limport swarm.objectbase.Swarm;# c T+ P! R: G
import swarm.activity.ScheduleImpl;
+ \# K% z3 j% M# A' Kimport swarm.activity.Activity;: f1 J# p9 }: O4 X% ^
import swarm.activity.ActionGroupImpl;* W" t9 j4 {/ K/ V% g/ \4 [
import swarm.collections.ListImpl;
- g5 R% \3 t u" w$ d& X' ~0 D @import swarm.defobj.Zone; V5 R- W" r2 F( |) ]& m4 P
import swarm.Globals;& r4 }/ d5 Q9 i/ L0 \0 k
import swarm.Selector;# m( l! j6 i2 i }) V2 q. L
import swarm.activity.ActionGroup;
% B' P' ~1 y" J% R. f3 x* `5 |7 iclass Agent {
$ m8 I+ y; D7 J3 w4 G* A% t+ e char id;8 h" Z8 V; @- D9 A
- p/ Z- r" ~) e
Agent(char id) {
8 v# ]8 z7 y6 ?% T. G7 v) p& d& F this.id = id;4 [ H+ h2 d' Q* J6 }
}5 l% O6 w& O- B7 E. J% Q! \
* b; C. o, c# {5 I$ A2 b9 n public void agentStep() {& L( ]2 m1 c+ z' m- N
System.out.println(id + ":" + Globals.env.getCurrentTime());1 [8 O( h' a+ Z- x8 v/ y3 q. o
}
5 @8 q, M( J ?) f}
' w* F W+ U" P9 @2 `3 K- V, A" J/ W) H3 `/ M
public class ActionGroupDemo extends SwarmImpl {
9 J4 M7 O$ V* ]2 a9 y$ n' C ScheduleImpl schedule;
, W$ G' K9 B/ c* L* N% ]$ } ActionGroupImpl actionGroup;
9 {# a: N2 S( j* B; F0 [ ListImpl list;
7 J9 `9 }4 I. o9 R- a char Id = 'a';
2 V, ?/ W& z9 j4 G$ ^2 P. R) J- B* `( z& H$ ]
ActionGroupDemo(Zone aZone) {1 t6 |1 b: T! @( v. J6 i M
super(aZone);: D! r1 c6 N! j: A; L
list = new ListImpl(aZone);
1 Z( p S4 ^5 f swarmSetp();& k( @# H. |: k- v5 e
actionGroup = new ActionGroupImpl(aZone);
4 r' G: r# W4 h6 b3 y schedule = new ScheduleImpl(aZone);
9 m' H8 Q3 J, e ?% E9 m' _ try {
5 S: N) t. L8 b Selector agentSel = new Selector(Agent.class, "agentStep", false);
- `4 j% F" ~, s' G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ K- g5 V6 R9 O, ^; P' V
8 W% |9 j; ]9 M. i% D6 b
actionGroup.createActionForEach$message(list, agentSel);
# c* ]$ T9 b( |. | i actionGroup.createActionTo$message(this, swarmSel);$ t( P1 j, X4 M; ~
schedule.at$createAction(0, actionGroup);$ N6 Z% I. {. b- k9 @' o
schedule.at$createAction(1, actionGroup);
Q6 l+ E2 b) u2 z schedule.at$createAction(2, actionGroup);
0 \- ^0 f% N& b! `" l
A w" K2 P6 u3 E( b, e3 S/ | } catch (Exception e) {
' i$ h0 Q9 i* i e.printStackTrace(System.err);
& D( z: ?" T0 c' N0 x/ H6 v //System.out.println(e);
9 L2 X8 N! V6 b f6 d9 G1 P System.exit(1);- w+ `4 {: F/ A8 w: E+ e' |5 ]$ m
}7 f. K2 u6 Y3 `6 S6 Z- N
# X* [# W5 J9 @' v4 y: }3 n6 c) u
0 q+ m' T# Q0 P2 X, J; D& S6 X" w }; Y8 K3 x6 @3 o
7 c5 p% [2 V( n9 {- @ private void swarmSetp() { H; M7 N" Y. Q! B2 {
list.addLast(new Agent(Id));
8 U, _5 ?- r# G) [9 G8 c# D Id++;
6 Z5 c1 ^ J7 J) {! {) H3 x) H- v }
! Z% d2 F5 Q7 s/ C6 X* E; l- T, N, V7 ]' j8 Z8 \( |
public Activity activateIn(Swarm context) {" j: D/ V4 z% a0 n7 z
super.activateIn(context);
$ l; G% j3 Y- Y. u" m: N2 x( O' Z schedule.activateIn(this);
( p5 {3 Z% |' @2 | return getActivity();. r2 }/ m/ R+ I( C
}3 a5 x+ Z! p, w( Y- x
]' u( o9 R( _ M6 A! u! ?" z
public static void main(String[] args) {! W5 _, D4 A: i9 S5 B+ f. L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ y/ D; E; ^/ }. [; Z% P
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
M- k. ]8 x" J5 ^4 N9 E swarms.buildObjects();4 K1 d8 R+ A4 Q! q1 T% m
swarms.buildActions();
6 q; v& V3 [. M9 H- j swarms.activateIn(null).run();
2 B* P' R5 W W- B }
# O, U( l. q1 I1 L" E7 S1 G
8 i3 j5 `; Y4 f* I% H- z( w} |
|