|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % C, p& E4 ?: J+ w9 D0 P$ G4 _% K# x; }3 j
* L8 ^# f5 i7 Z7 U. Q; M9 G. l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, N) d0 S) f# ^% ]5 Y5 U" j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! W# r; D* M E! uswarm.SignatureNotFoundException3 I T9 B* _+ x: x6 a& Z g( x. q
at swarm.Selector.<init>(Selector.java:76)
+ k& W$ n! O- ?) [: ?4 h% o" J$ x: n at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Y( a' {( J! f( h# D( G at ActionGroupDemo.main(ActionGroupDemo.java:67)& S6 F- I* X2 T2 _, U) o
: t3 O5 M1 W! O
3 m& D5 z0 w0 _
import swarm.objectbase.SwarmImpl;
- d, Y* k$ B+ qimport swarm.objectbase.Swarm;
! K5 ?3 k1 }0 R" K' [import swarm.activity.ScheduleImpl;
& U0 x O: x6 a: O) Wimport swarm.activity.Activity;
% w8 z9 b" F5 d$ G9 u1 D# f! Mimport swarm.activity.ActionGroupImpl;
. c4 O$ p* l/ D# @" mimport swarm.collections.ListImpl;2 `/ T8 J1 y4 ]0 Q
import swarm.defobj.Zone; 2 h: k! P0 N7 w/ y# T8 E2 Q' r
import swarm.Globals;
# w1 L* f( ]/ iimport swarm.Selector;7 `, n$ J- Q% [
import swarm.activity.ActionGroup;
4 Z+ d9 j/ \" jclass Agent {
1 N% c4 @* a( I' u char id;2 z8 W7 U; U* l( v$ Q7 R
* |. @+ G6 i# a9 v# X Agent(char id) {5 m$ ~3 J. B9 P+ X
this.id = id;
3 v% u4 b9 o3 d; z# ^ }& ~: w! B& R- v
% Z3 w I$ B* X9 ~1 k% C
public void agentStep() {
* L& y% u8 T1 E$ L4 \" u9 @ System.out.println(id + ":" + Globals.env.getCurrentTime());) I0 Q2 H0 F# @, \" c# U
}
+ f4 H8 U- B7 X# G) y3 D) L}9 H- @0 d: j/ Q+ S9 P( j/ m
9 E6 s3 L8 K' Q: Z4 [
public class ActionGroupDemo extends SwarmImpl {
( s+ V* J3 M9 u! _2 p* D4 u& g, \ ScheduleImpl schedule;8 B3 A: `+ i: p" t5 o
ActionGroupImpl actionGroup;
& `! o% `8 z2 X p1 o r ListImpl list;6 r4 k. _1 i, B E9 T% |5 f0 g- T
char Id = 'a';: ~- [5 v. |! v
7 u# m& [% u8 \9 E6 P0 o
ActionGroupDemo(Zone aZone) {
6 T M, o1 |* I& Z4 F1 Q& y super(aZone);
7 o2 N1 |" O, Z Z8 C& ` list = new ListImpl(aZone);
' Y1 ]+ f# f& Q: O2 l" g1 ] swarmSetp();
0 w5 _+ X6 Q9 P" V B7 u actionGroup = new ActionGroupImpl(aZone);
2 R q% J6 N/ r% T8 { schedule = new ScheduleImpl(aZone);
* ]/ F9 e! E+ k$ c try {
% I2 ~- r- Z0 t' O' m* ?, I Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ W/ |9 w9 P$ [; T: k. _5 ` ^ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 ?2 w5 y# i' ]1 Q$ U. w q! |
# s! b/ V z' B8 o' c) z actionGroup.createActionForEach$message(list, agentSel);
' X* n6 r+ ?" z8 U actionGroup.createActionTo$message(this, swarmSel);
$ K) u! g g& P# p; \* T schedule.at$createAction(0, actionGroup);
* Q- N5 k, t" s% | schedule.at$createAction(1, actionGroup);
7 N" b) c2 b/ h" ~8 E( K4 c, Z schedule.at$createAction(2, actionGroup);8 `9 L$ v7 ?% R; i5 B2 y6 o* [% w) h
6 j! N. R+ a. Z' k
} catch (Exception e) {
; ^0 E/ r3 K. d: I e.printStackTrace(System.err);
0 i6 z/ I7 Q7 u$ j+ M" V1 }8 [ //System.out.println(e);
; j' v* \! ]9 c1 a System.exit(1);* O0 H, b) c/ s. g& r* g& O
}5 Y5 A9 F& W! v- @0 |7 ~! R9 Q9 p& v
& b: y3 q) @- E- l6 |- `4 p, o, y8 M/ E
}
( ]5 k% a) F" ]& W
7 y k# t/ ~- P/ x9 Z private void swarmSetp() {
" R0 q; C* r. y, u; F/ I. Q0 v list.addLast(new Agent(Id));
3 W$ {' f7 @! K d) s7 p& e/ x0 Y Id++;
( `4 s5 Z9 n0 Q: V" F$ R }
$ g0 J+ M1 V+ }5 ^" I0 t2 R' B4 K, x6 H. j6 k" y' p9 n: r& T4 j
public Activity activateIn(Swarm context) {
$ n5 @ C0 o y) f3 _- b super.activateIn(context);7 `6 J& h% c4 y* ~/ ?
schedule.activateIn(this);
1 n+ g6 P3 W' g* K7 x$ Z5 q; P/ b return getActivity();
4 V$ O7 R) @3 V: R4 x. o }
- w7 s+ G: O) j2 a. l2 t
( {' w4 W. t, H$ M$ b public static void main(String[] args) {
( e% O& ]" h$ ^- Z5 v9 X" y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, v4 P' a' \& r5 z0 [' q. d' y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 z X+ i4 e9 o8 O# h swarms.buildObjects();& b- o2 j& A9 K2 \6 P4 o' S J
swarms.buildActions();
! e, k7 x' h) y swarms.activateIn(null).run();
' j4 R# I6 D' E% o! W( |" Y }2 R& g1 r# I- |4 p4 ]9 h* |5 K
# \. q' P6 W% u; A. n' {
} |
|