|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 D2 ~3 S& O! E2 n2 Z% v, P' n, @( h- o4 T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 h! f% V! j, f' M2 h& o! n5 g' J8 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ a7 v6 n% E- m6 T, Eswarm.SignatureNotFoundException
' v, z- l4 v3 _: B6 p+ w at swarm.Selector.<init>(Selector.java:76). o- _6 K0 `" |- {
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. h) B: z( I9 P3 _ at ActionGroupDemo.main(ActionGroupDemo.java:67)1 a; t' h7 T# N& h6 Q
; V$ [3 T6 i+ |7 o9 s- I! ^( S/ v D" h2 b* r8 D8 d
import swarm.objectbase.SwarmImpl;
" h3 g* q5 t3 `1 } mimport swarm.objectbase.Swarm;
7 W$ Y' b$ {# [$ j( _# {( }5 W" Mimport swarm.activity.ScheduleImpl;
& r' q' y5 \6 B6 G1 y' zimport swarm.activity.Activity;$ A% i7 X _9 [1 e5 O- d
import swarm.activity.ActionGroupImpl;! h# ~1 f" v" t W. E: q
import swarm.collections.ListImpl;2 A( F5 L( l1 `0 t- `- c0 R) Q, b) Z
import swarm.defobj.Zone;
$ ]2 V: f8 q) [# g' s/ iimport swarm.Globals;( C- T% H4 M! Y# c& l
import swarm.Selector;9 p9 I, z7 n: Y( S$ Y; [# A
import swarm.activity.ActionGroup; 6 h7 R3 R$ w/ g; K+ E' C/ m& Q
class Agent {
( B# z6 f! @/ N f char id;
* w+ J0 ^4 ]" n, }5 p$ o0 d6 Z$ P2 h$ I& Q
Agent(char id) {
' F7 Q* d; N5 M) N this.id = id;
4 {5 F+ X9 ]- t$ A }
/ o: R2 k' \% y# s: \% |4 j8 v/ m& e2 H9 {
public void agentStep() {) F2 U3 F$ U. U2 M9 y# i
System.out.println(id + ":" + Globals.env.getCurrentTime());
" I/ l( |, g( y7 r }
4 I! z% _1 ]% y4 [1 e}2 p+ f" Q( k% ~; s9 M# C- ~
# h( x8 W$ \0 [3 n/ }public class ActionGroupDemo extends SwarmImpl {
5 }8 C9 Y& {) Q7 ]9 S% a* z ScheduleImpl schedule;
- L. I; N+ S2 p ActionGroupImpl actionGroup;+ j3 X% p4 T) c
ListImpl list;
8 b8 s" P/ i1 u- v/ I M char Id = 'a';
( ?$ L9 w. f! t4 m
9 C* Q; F1 p8 ? ActionGroupDemo(Zone aZone) {. `" Q/ z/ k7 u& J
super(aZone);
3 |. S3 D# W+ i+ U4 w list = new ListImpl(aZone);
8 v9 i- O' ?0 M" I6 I swarmSetp();
: Q }) S. S# a* I actionGroup = new ActionGroupImpl(aZone);
% m! L5 j9 v, v- I# e6 | a schedule = new ScheduleImpl(aZone);
& H, U' y6 |5 N& b8 L try {
& G1 O9 R- d& w; ~: R+ t4 L Selector agentSel = new Selector(Agent.class, "agentStep", false);3 [. d1 K6 `4 y& H! h* N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, V, Y9 @8 C; C' ^, I; s
: X6 O- Z1 J& x! F1 |* K actionGroup.createActionForEach$message(list, agentSel);
) c+ ~0 o. o+ B actionGroup.createActionTo$message(this, swarmSel);- ?, [5 L) f6 x8 ~6 n/ h
schedule.at$createAction(0, actionGroup);4 [( @/ R2 ]6 k4 E
schedule.at$createAction(1, actionGroup);2 P. J: X' x$ O. N2 D
schedule.at$createAction(2, actionGroup);
: `9 [ {. W: Z' `/ K6 o" @7 Q& O! E, L
} catch (Exception e) {
* C1 i U* y& m7 r" J e.printStackTrace(System.err);
5 J$ K0 P1 k/ \% J* w! } //System.out.println(e);$ _- t9 d3 R: W/ c! s
System.exit(1);
" {6 d7 B4 \0 [/ a' T }
: R3 j8 z7 f0 ^; Y9 o
( ^9 Q' ~% g4 F) u8 y% Z% A) T" j1 S
}
; {6 Q R0 F: h" h2 C% v# p5 }: X; H+ F% F! p
private void swarmSetp() {+ O/ C! E" J5 i2 _! ], n. S
list.addLast(new Agent(Id));' x2 l7 h2 |' G, L, d# Y6 I5 X8 J
Id++;
+ q8 Y4 X& m( \0 X }/ d3 Y# q- L$ Y/ V" {# c% c; ^2 f( i
u. K: l' p; k+ l& A
public Activity activateIn(Swarm context) {
; d* l7 G5 d5 j' s super.activateIn(context);
! I4 m* u5 ?$ p9 A/ m/ n schedule.activateIn(this);
& i! {) R& @. ~ return getActivity();
, x! Z- z( n! c7 s }
5 K! B/ q* Y8 @: g/ F# T
1 i6 V9 ` k' c public static void main(String[] args) {# f2 v7 v# A1 p
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); D- Z0 D0 O( j2 u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 s4 r4 W& [5 l( S' b3 x% x swarms.buildObjects();
8 \2 B( A3 m {! E% A! p; i swarms.buildActions();
) B' {+ j5 J2 N' L swarms.activateIn(null).run();0 r5 g& `, ~: g1 k4 }$ a& p
}6 o- e/ @9 E3 |1 Z. E( Y0 J
0 M) R: S$ w7 l8 z. ]' `& K
} |
|