|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # ^% O# M9 _' r
7 Y3 [; N5 O' h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 T: r. P* ]% q8 o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 ~/ M/ `. A" ?) f8 d
swarm.SignatureNotFoundException; Q4 ?1 K8 G! `$ A: }$ ]9 }, F3 o
at swarm.Selector.<init>(Selector.java:76), H T9 u C+ }/ ^, k' S
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 a7 _1 C0 g9 k8 g at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 D9 L( S- c P4 }
* g0 W- s6 u* C# {4 g
: C$ n9 c3 C6 S9 m) ]0 U" }import swarm.objectbase.SwarmImpl;
1 J9 h# A6 q# Rimport swarm.objectbase.Swarm;7 L* l+ b2 a k( l5 _
import swarm.activity.ScheduleImpl;. ^8 A( C6 I5 \8 {. t1 S- j
import swarm.activity.Activity;6 U5 k* c4 T2 }. t
import swarm.activity.ActionGroupImpl;) x1 N( @. v6 O, V1 e% D+ L
import swarm.collections.ListImpl;
- z: l9 |+ H# r: L: @- cimport swarm.defobj.Zone; * m1 x. @, S; K) ^, v% v2 p5 M
import swarm.Globals;
- p3 O) ~0 X1 X0 fimport swarm.Selector;
6 A4 M/ D5 Y1 a# Jimport swarm.activity.ActionGroup;
' P% D X( {) i8 _class Agent {; t b" K+ P. q
char id;
" K0 h% n+ k7 H! d. {0 m1 b! Z$ T; h; c% J$ J: x
Agent(char id) {
3 s3 w v4 }2 A+ n+ M% c3 O8 b this.id = id;
4 G+ F/ [+ e& O9 _: T+ O$ p }* Q% ~% F8 ]5 q0 K1 N' A: ^
/ A% V; F( e) T" g/ w: I
public void agentStep() {+ T& L# ]3 g. E. ~4 D) N3 a
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 n: b. \" H) Q/ B) c+ j }6 ]8 r8 s/ o0 ~) ~5 L
}
5 X# G8 \- X/ B) E
* p- q0 q6 {) F3 [5 Dpublic class ActionGroupDemo extends SwarmImpl {. {5 J1 h9 A% J( R5 Q
ScheduleImpl schedule;' H5 B3 {4 Y9 l( k" Y
ActionGroupImpl actionGroup; ]' ~% _5 G$ L
ListImpl list;
+ o+ S' ?9 b$ P5 U char Id = 'a';/ t. x# @$ j* e; V9 s
* Z6 F) U) N; B6 _: s' S# H
ActionGroupDemo(Zone aZone) {
t$ K! w4 T, b; s$ H super(aZone);$ N' v7 Q. P) }: v0 d, e$ |1 O
list = new ListImpl(aZone);
/ t) w1 J* F, o: e/ [' M8 x swarmSetp();
9 o! [3 Z7 d. [$ |% a actionGroup = new ActionGroupImpl(aZone);8 O- e0 |! m6 n4 x# z/ Y2 U# G
schedule = new ScheduleImpl(aZone);
# c; N0 Z( c) i2 j9 C) u try {
+ Z+ t [, @$ ` Selector agentSel = new Selector(Agent.class, "agentStep", false);+ S- u+ q, {/ w# x. D3 F3 l. V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* U3 r v! ?2 S, b2 f" Y% t ( c1 p' z6 G1 f; m y# C1 |3 a
actionGroup.createActionForEach$message(list, agentSel);
$ \1 U. `; V# u3 |3 N( |5 E+ ^ actionGroup.createActionTo$message(this, swarmSel);/ j- } r2 x7 P) c- z! n
schedule.at$createAction(0, actionGroup);
# s9 V3 n6 s% m; q5 x schedule.at$createAction(1, actionGroup);
: d* q. H5 u' u( X' L& s$ Y schedule.at$createAction(2, actionGroup);
* w8 J! { b) h9 z( [# p+ B. V- j( W. i, |9 a) O/ c
} catch (Exception e) {
, G* l6 a# d; ?7 M! N$ _; q e.printStackTrace(System.err);: y1 K6 T' I' W/ k* P/ q! M
//System.out.println(e);+ a- H; y$ S# `( w# H2 e
System.exit(1);
' l! U6 X* o W8 x! S' x }, [1 _8 E/ a6 T
6 x G8 o# n* r P9 @
3 f' \2 O4 f8 E, m; u8 O
}
6 ~- d/ _7 w M+ |1 o7 [( C
" Z$ P; L& T/ e5 Y1 p3 J private void swarmSetp() {
3 C) g% \) G7 |9 S8 {3 ` list.addLast(new Agent(Id));& }' U0 h3 F. L7 X2 I# D! ?& V1 _( M
Id++;! u/ {: v4 c$ R, q0 ^ g
}# J; L% z! J+ \: J! D1 y4 d: R' O
* Y4 d. L- C( j' b9 _3 m
public Activity activateIn(Swarm context) {6 n9 |9 E3 `8 k: r3 r% B
super.activateIn(context);! P. T* M2 H7 g; Y& c0 F
schedule.activateIn(this);: I2 E% z/ f% d4 Q
return getActivity();5 T+ G7 b( s- `9 ~0 x% h
}
7 V4 d# o, x$ D! h3 C. X8 Y" b; y! v9 D
public static void main(String[] args) {- w: V& n+ ~$ B$ _4 ]! Y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: E& r: L# v$ G9 N% k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# E7 t; N/ x9 O9 _( K swarms.buildObjects();9 O1 S& u% [/ N# g O
swarms.buildActions();) K& k: N9 A; T5 p( A
swarms.activateIn(null).run();9 Z; h- N2 t6 m, J
}$ X' `9 R# x8 x$ C/ m; s4 P; I) S0 N
" R! p b8 o. j, `+ w% Z2 \ U} |
|