|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! k' r! S# g' l! V3 M S, K* A# z1 S# S0 [* k& c$ u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" c) G- y8 w b2 _ W7 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 U) p* _7 ~& g: {9 L' T- ?
swarm.SignatureNotFoundException# ]5 Z p- ]; L4 i2 [# j
at swarm.Selector.<init>(Selector.java:76)( V* H J' V4 P3 K6 `; D2 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 C/ b2 h- g9 c6 d, g' c
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- }) L) l7 E0 ?" n4 O1 k x7 P3 |/ L' {% g3 u, F: E. g
9 V6 n, s- w- a9 {
import swarm.objectbase.SwarmImpl;2 G0 P' C% z" u* r7 m8 `
import swarm.objectbase.Swarm;) _% Z9 C3 [2 D# J+ ^. D. y
import swarm.activity.ScheduleImpl;
% ~% p' _, `3 dimport swarm.activity.Activity;+ }8 \& t+ a) R- Z
import swarm.activity.ActionGroupImpl;) K' ]( k8 \* {/ H' ]- T
import swarm.collections.ListImpl;
1 F0 _' v) l1 z0 b8 uimport swarm.defobj.Zone;
8 Q$ W( T# U# y1 Vimport swarm.Globals;5 S) e3 V* o8 F- ]( x
import swarm.Selector;/ F" N: P" x3 Z" J0 d
import swarm.activity.ActionGroup;
! [, v9 C) \( ?; G. Q# yclass Agent {
k& J/ \2 S( d4 S, Z% d6 M: f char id;
6 Y1 ^- v1 w e' b
- e4 }* A F3 j/ ` Agent(char id) {# ^( ~7 ^1 X, g
this.id = id;
, B/ x. H& L2 a6 D }
9 z% W* p. @/ Y7 [& \
" e `/ ~. u9 B; _4 U public void agentStep() {' f6 W8 K- k F- z
System.out.println(id + ":" + Globals.env.getCurrentTime());2 P* k( }$ I+ M, L4 b/ R2 g
}
( K0 d1 p7 C" Q/ u* O0 l* c# e}
M: |) T5 _7 P: c6 I
$ k( m: \! J5 k0 ^( Ppublic class ActionGroupDemo extends SwarmImpl {
+ N# p+ q; r( H. m: F* \) ?7 L' i+ c ScheduleImpl schedule;5 v9 M$ [* V. _7 q& m
ActionGroupImpl actionGroup;
6 C9 H- N; S4 _; H g1 J4 p# _( p ListImpl list;
4 t- V6 ]& B: I% t0 ?) @ char Id = 'a';
' C1 g* F; T! Z& O" E+ J+ B# d1 H, ]+ k8 d. K! ?9 }# B, y
ActionGroupDemo(Zone aZone) {
5 [5 j& ~! A8 t* @ super(aZone);7 u1 f# D2 U6 ~2 _; m0 A6 ]8 m/ G2 b$ B
list = new ListImpl(aZone);
/ b) k; n4 D: \2 B8 ^, ? swarmSetp();+ {" C" H9 O0 N8 p# {/ y
actionGroup = new ActionGroupImpl(aZone);
, L6 V$ M8 j4 P7 K% S' O1 e schedule = new ScheduleImpl(aZone);
1 h) G3 H, T0 u" S/ @- { try {! t- q$ x+ i: X
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 x1 A( }* P# \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 P1 y# {- n4 |2 Y3 `+ V& D
- l1 y1 K! `/ j actionGroup.createActionForEach$message(list, agentSel);/ [+ L* r' L. u& @
actionGroup.createActionTo$message(this, swarmSel);
( K+ [3 P1 [* E0 G4 ]( g" o schedule.at$createAction(0, actionGroup);/ W9 A2 I$ a1 C! F$ N" F: S
schedule.at$createAction(1, actionGroup);
5 P; o- v/ ?0 Q7 ^4 t schedule.at$createAction(2, actionGroup);
+ j- _: G) H0 W8 r( a) L r* B! X
0 W& m' S1 x& u; P& |& ^ } catch (Exception e) {
$ ?" Y8 Z. f4 t! j( _ M8 S( v e.printStackTrace(System.err);
3 I4 j, u% I& i //System.out.println(e);
' S0 V0 \& w5 M2 x System.exit(1);( H1 n- Z' p7 a
} @! B6 _4 u+ |& Y* z7 H0 l
6 e3 Y" D* e+ z M! Y: b# z3 W/ c, ?; R* u
}3 F, x- \+ q1 k8 m) c" q, H0 o
) w* `/ T9 ^) n/ a& R
private void swarmSetp() {
, S! }2 k, }" a8 ~! V( C list.addLast(new Agent(Id));
7 |1 f0 l7 Z$ z2 ]9 q" _0 y. d7 w Id++;
8 x; o7 [; I; g( C }. X5 E+ y8 {. n& D5 j/ F4 d
/ s6 B( q% M/ Q$ W: ], k public Activity activateIn(Swarm context) {
* h( K/ y5 `+ x* j super.activateIn(context);
8 L! O. y( s. w L schedule.activateIn(this);
* W# M8 O5 S( h, e( K1 q1 Y return getActivity();- g* q7 m: a/ S7 Q) x! Z
}
: g- Y* O* I0 H# x( b" |! s! Q% }# M+ K' g v
public static void main(String[] args) {
1 |8 [4 V/ ]- L& P% U8 W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 d p2 y# H. N4 ^1 n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 }) n) s- G* i2 _8 D swarms.buildObjects();
% Z' _ I K- O/ ^- m' l# U5 ~; I/ X swarms.buildActions();
1 W/ |# S- N9 B swarms.activateIn(null).run();
4 w8 s5 ~5 u( X+ c8 B }
/ `% A6 W7 c/ p* T$ U0 |6 @
5 G/ d9 ?! M8 x9 D8 Q# O1 m} |
|