|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 N% @' ~% W/ m& m0 A j& x6 a: ~1 {$ C0 N) p5 P( v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 { a; w- e. G. Q, H7 P o* q8 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- k: N/ n* k: a& {5 x
swarm.SignatureNotFoundException
% R* \0 w$ p( J' {( U. J at swarm.Selector.<init>(Selector.java:76)4 [* p$ S. Y1 M- Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 B2 ^- n# ?0 ~$ T1 T v0 D at ActionGroupDemo.main(ActionGroupDemo.java:67)3 J: @( G) w0 U4 u- M& [( c$ }
" C) }$ D/ B4 x
2 S' C' ~/ G: d* l8 K1 j A
import swarm.objectbase.SwarmImpl;# n5 p, R! N& K
import swarm.objectbase.Swarm;! z) V. o% n# k: C
import swarm.activity.ScheduleImpl;* |1 P" P* g$ q
import swarm.activity.Activity;5 g9 |/ s% {0 j
import swarm.activity.ActionGroupImpl;
9 ~0 q9 b% K, R" _: D' x% |: himport swarm.collections.ListImpl;3 ~- I$ X- p! n; E8 m
import swarm.defobj.Zone; 5 Y$ |& M: X4 r9 h
import swarm.Globals;
& h9 D" U t+ h& nimport swarm.Selector;, z2 G! D) h0 i3 M
import swarm.activity.ActionGroup;
, x+ e+ Y2 m3 Z9 U7 \! w5 mclass Agent {/ M$ D ~1 V) R, C
char id;
" A+ d, x d5 j( O4 ^8 b) D
z2 d4 x8 O# v0 _4 A7 D2 D Agent(char id) {
% N9 @8 C3 m% E0 R/ [) R this.id = id;
1 H7 [) \ [) r. j* V1 Z3 K5 I/ W }, t5 a7 ]1 J' z% @0 ?5 ?
6 G. o: b3 K' Y public void agentStep() {
: z: y+ R" O! {) V4 i System.out.println(id + ":" + Globals.env.getCurrentTime());
# S; r* a; D3 P7 _6 o, {8 R }
8 o/ ?# v# S7 Q}2 x( M v# [ M# s, i
1 i( J) ~- H, N4 \9 N/ n3 w: [
public class ActionGroupDemo extends SwarmImpl {
# x$ a; z" v* h3 e ScheduleImpl schedule;1 K: t- q; J% x' w+ M$ V- C; t3 N
ActionGroupImpl actionGroup;
4 Z; q3 U, H+ r! o5 Z3 _, w ListImpl list;
* T! Z4 R2 H$ [# s; b4 J" p char Id = 'a';
/ Q8 v: h. R; A4 n# r. K
$ K5 }) ?! J; v+ c" V ActionGroupDemo(Zone aZone) {
4 g4 c# w3 U, v! I+ @8 Q2 f3 v super(aZone);
9 v- v7 Q9 A% h list = new ListImpl(aZone);
/ f# D0 X% z1 l" Q$ Z- {$ j swarmSetp();
% m/ y( C9 o, A7 i8 H; L actionGroup = new ActionGroupImpl(aZone);- z9 a! N! E& T0 [ }5 U" M1 E6 ^
schedule = new ScheduleImpl(aZone);
: d/ w/ w6 j- `% o, x try {! ~+ h, M: n& e- a
Selector agentSel = new Selector(Agent.class, "agentStep", false);& k3 e- j2 R p U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* q& ?5 B* Z- i
, B; |3 x' x0 e2 [& s actionGroup.createActionForEach$message(list, agentSel);
/ h+ E8 n: v& W4 a% `6 H/ c0 X6 M( C actionGroup.createActionTo$message(this, swarmSel);
( i6 A, m2 F; s) o schedule.at$createAction(0, actionGroup);) u* d1 I) I6 [* I; t' h7 O! n8 y
schedule.at$createAction(1, actionGroup);7 g1 d$ s t, M# @$ V& w
schedule.at$createAction(2, actionGroup);
1 p$ d! s/ X. Y4 ?0 @& C9 N4 |, r3 R( _# s9 n' m: K9 U
} catch (Exception e) {
7 { Y& k& t7 E) m" u q6 { e.printStackTrace(System.err);
$ Y( s- T6 I' t6 M! Q% c/ I' D //System.out.println(e);
! C" Q9 p" W+ }* f/ l System.exit(1);, @( H, Y7 E, ^# J3 ^6 L0 m# U0 d
}0 d: ]$ V9 G9 v6 L. ~$ U
5 D4 P1 u5 F5 u+ e- h
. d. Z- H: N5 j+ s; }) J7 _; C }6 P- w7 o: b5 g1 n/ y
* t: _4 N+ K- ^, L, d/ U
private void swarmSetp() {
5 z: T+ y! I* ^5 t& } list.addLast(new Agent(Id));' ?$ G+ a2 j! y4 S# ^
Id++;3 k- q2 a" @3 j& l2 f
}
i8 K) Q9 h( A' q" F [! l0 @2 P: Q# G( K8 d' V/ k' r
public Activity activateIn(Swarm context) {
K, Z( k% ~$ w6 i4 E0 \ W# O' N super.activateIn(context);6 L3 j# K3 ~- V* }; {
schedule.activateIn(this);
: E/ Y: z1 D5 K* Y* m; _ l" ?$ ~) ? return getActivity();
5 `5 F& w% D' O }
* `1 R7 y" y# o2 E8 a: l4 K2 c D0 ]5 ?* Q% C
public static void main(String[] args) {
1 u9 y5 b4 v% @2 e: U( ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ c" O8 x) B4 j4 j! e$ b9 Q, y Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 `; f8 G" D5 Z, D" x; R
swarms.buildObjects();
, A% i8 |3 B5 X/ A2 ^7 q swarms.buildActions();5 d9 V; ~, X2 R5 R- A, o. R
swarms.activateIn(null).run();
! E! m+ g7 \. A }
# R1 h8 |/ Y7 B( @
* ?# P& L. s! |, q3 K} |
|