|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
F5 B5 C& v; h2 v7 R/ u$ }" S4 U) d$ }. z5 b; `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" l* u2 C$ i! {7 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ B1 S; }; _0 x8 g6 mswarm.SignatureNotFoundException
P, h% G8 [+ o! U$ `8 ~ at swarm.Selector.<init>(Selector.java:76)
9 O! p& u1 U6 y$ Z( S at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 h4 ^; Q" I4 [, f9 N! x at ActionGroupDemo.main(ActionGroupDemo.java:67)" J4 v) p. g% ?' w1 @
/ s! |2 z2 V6 G+ \' h- d9 z2 |
+ A2 p9 i# r3 p3 A
import swarm.objectbase.SwarmImpl;
. V2 V: [2 n* D( s$ {; w g* N% Fimport swarm.objectbase.Swarm;8 W& b* h, q- U8 ] {- b
import swarm.activity.ScheduleImpl;
V9 X E: u o* `* Nimport swarm.activity.Activity;
% b( H B: c: t( H2 timport swarm.activity.ActionGroupImpl;
* E8 z' V. z2 ]+ Timport swarm.collections.ListImpl;' Y: o9 I! |0 z
import swarm.defobj.Zone;
- H) B! ]- @9 ^& U3 V7 S, B' \4 Nimport swarm.Globals;3 L6 V5 S. V' b, k" F2 f, ^1 M% x1 C
import swarm.Selector;
* P8 G }# p9 `, Simport swarm.activity.ActionGroup; / j8 j, D% i4 a1 }6 P5 Q0 ?
class Agent {- z# d, [! U7 K8 k) t/ Q
char id;
- J3 p u- f7 A7 e# X
# K7 @- ~8 @/ |* d. {9 H! ~. ]% T Agent(char id) {& ^, O; e. o+ N4 A
this.id = id;
2 J5 i3 p1 ?- g( b0 I/ ~ }
0 y- K5 H' @( Q! B5 c' M2 k6 [7 l
public void agentStep() {
' H& ^: |0 s7 b; f7 N$ A System.out.println(id + ":" + Globals.env.getCurrentTime());, i) X+ z9 B3 [( k Z8 K% Z( X4 }
}
5 T) w2 f2 R$ a5 M1 ?+ ~8 M}2 D1 r8 N* M$ ^) _9 _4 ?2 \/ M
8 f O+ I5 X1 {public class ActionGroupDemo extends SwarmImpl {
- x r# P" H+ i" W5 E6 D ScheduleImpl schedule;
3 |/ T* q2 z2 o% k( r' l ActionGroupImpl actionGroup;
$ e7 Q# q7 N% \1 e$ E ListImpl list;1 P" j$ C9 M% q3 t! V, V3 s6 ~
char Id = 'a';
) L0 V! t5 x) S+ M; B: T; V! _' d4 |- K: o L
ActionGroupDemo(Zone aZone) {8 h4 B4 q" {/ w! u# }
super(aZone);
! P7 d" W/ h8 a3 c, O; O% l/ L list = new ListImpl(aZone);: k/ D0 f/ C+ A: T) S/ i
swarmSetp();
% `9 w4 F; J) @' {* Y actionGroup = new ActionGroupImpl(aZone);
# B; }1 M$ f0 N8 g, K! t' m schedule = new ScheduleImpl(aZone);& E+ i+ C: A: L
try {
$ t& M5 |& D1 {! V; l+ e Selector agentSel = new Selector(Agent.class, "agentStep", false);7 H. G' g& Q1 V5 |& ^7 `) G/ p% U5 [: u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 J, X, H$ O: }" J
/ s; t- `2 [+ k" _ actionGroup.createActionForEach$message(list, agentSel);" O+ h+ O+ u( ^
actionGroup.createActionTo$message(this, swarmSel);
( P% c+ P0 Q5 x p' L4 F; H! n2 w schedule.at$createAction(0, actionGroup);: @2 u2 X7 r, j; I+ v3 X
schedule.at$createAction(1, actionGroup);# s7 h+ Q6 `& a1 j
schedule.at$createAction(2, actionGroup);* s$ Z9 m) }" r, o
1 K$ y8 z6 g( m* X1 z4 V- g+ B
} catch (Exception e) {
3 h+ w' ?) U5 k e.printStackTrace(System.err);; m/ Z* a- @3 w/ x
//System.out.println(e);: D+ j# J' |* D$ D: M. W7 `& o
System.exit(1);; B9 T: u. r0 f" V1 I2 U
}/ J% G4 O6 V H, H4 H1 x2 d! J* s
( A ^9 ~% J( |0 O* I4 g
0 ~; F3 a" ~; ^; A# { }
# X' \" v2 I: M+ U5 L A9 ]8 p' h; m- M* F' a B
private void swarmSetp() {
7 i: P7 n! M! ^5 S( R! m list.addLast(new Agent(Id));
2 @) Y9 c* m- \# _ g1 p" s Id++;# N) I( t) L2 [+ Q
}; d8 K- ]- i6 ^8 v# `! A
% P0 y9 P+ u- A* Q7 S( @
public Activity activateIn(Swarm context) {- a! i6 D+ x: {. b2 X; A
super.activateIn(context);/ d0 K5 ~# r8 [( T- C& r; J8 a
schedule.activateIn(this);5 v5 r4 M) C5 W# m$ X" K
return getActivity();
# T7 [# u+ N" `/ v; [2 A) T& J }
- k* Y5 r- ]: v0 ~, Z. A
" Q- e% x1 f$ Q5 m) I/ h public static void main(String[] args) {
$ ~1 q M, r5 ~; T& V1 [ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 z( ^+ e' k: Y9 \% K: C! j- W3 N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' W$ a* H* b- c: s swarms.buildObjects();0 V4 L6 p/ a/ |# P# x! N
swarms.buildActions();8 O2 A4 Y8 G C5 |# Q
swarms.activateIn(null).run();
3 g# [' Y/ f, m6 `4 p. F }
; P! {3 J% D s) L& r5 ]) d% y$ E; m8 c( N5 a5 i; i: l
} |
|