|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( P( g( X' X. G8 Z( |
: `; N* Y* y! v* }$ ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 z( P" \) r" X7 Z* C/ S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 p/ W8 X% V! ^8 L4 S9 D) d
swarm.SignatureNotFoundException) _+ {" _' K5 A# }( J3 _/ R; Q$ z9 m
at swarm.Selector.<init>(Selector.java:76)1 n9 B; F( h* f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) y) f# r, c y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
' u- C' C: Y9 t% ]
# v" ?8 X" Z! X! b% }2 k5 l7 P" ~* C" i5 U5 H, Z2 }; }
import swarm.objectbase.SwarmImpl;
I; q/ q5 Q. A, z* p/ Dimport swarm.objectbase.Swarm;
! J) o' j% l# v, ^# `% c. p7 wimport swarm.activity.ScheduleImpl;; x8 ^2 ?( u* x$ E4 _
import swarm.activity.Activity;
0 J' v" t7 j$ Eimport swarm.activity.ActionGroupImpl;, W4 e, t" ]1 Z# H" [
import swarm.collections.ListImpl;; f% }6 y2 n& A. n
import swarm.defobj.Zone;
, a( j) Q6 N a. rimport swarm.Globals;1 G7 L) F* v, ]; ^7 C
import swarm.Selector;
0 q1 @3 } \3 W/ h' E9 g5 Limport swarm.activity.ActionGroup;
% m+ G; E$ {7 a! X4 C3 qclass Agent {
0 H9 Q9 X9 Y& w+ l; J" ~, O( W7 i6 Q char id;2 e5 f, B2 {1 }; Q9 D6 W
2 `, y( o. F* U2 b9 F- m" b5 q/ y6 \+ H4 z
Agent(char id) {
|8 u- f" Q( U$ ?. k: n this.id = id;
1 X4 D8 b+ k8 ` }
) H7 {* h+ E/ l+ p% d1 Z& K6 [4 a0 u& ?4 R3 q3 n
public void agentStep() {
6 W1 [' d4 h0 k System.out.println(id + ":" + Globals.env.getCurrentTime());
% A; Z/ j1 L' n. T5 T }4 L1 Y& t+ M! h; h' h4 n) {
}1 i, c8 S- T5 l
) }7 H$ a. v4 ^0 P( F& |
public class ActionGroupDemo extends SwarmImpl {
2 t: F7 ~; g. [4 e/ ~$ @5 O& m ScheduleImpl schedule;5 J' t$ e) N1 |7 B
ActionGroupImpl actionGroup;8 y: U3 S" g& t8 Q; r
ListImpl list;1 n3 r. W4 B& B" Z7 H7 C$ ~
char Id = 'a';( c1 _2 T# A! z( f5 x
- r Q) U5 L+ @1 w+ { ActionGroupDemo(Zone aZone) {
$ C4 s% d4 s& M: c# K super(aZone);6 f: _) s- I- I+ d' ?" x1 V |+ P
list = new ListImpl(aZone);: U* Y# o1 \/ ?
swarmSetp();
- _" a% T# x: s0 g6 H- }- z" k actionGroup = new ActionGroupImpl(aZone);
9 r8 @8 C ~' ]" [3 Y: z schedule = new ScheduleImpl(aZone);/ t, K$ h; C+ `, Q0 ^4 J
try {& K4 a8 e$ T& J; f+ j& X, x3 ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);; c# v9 }% R% n/ i8 N0 N# f+ [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 D# L5 _- [% t1 O: e4 e( a
: s8 P' z$ C- m' S1 \8 N actionGroup.createActionForEach$message(list, agentSel);
|, Z; u" w' [3 b actionGroup.createActionTo$message(this, swarmSel);
$ N' Z4 Z1 K- e' }. l. o5 A! d- @ schedule.at$createAction(0, actionGroup);
" k% x1 |. h% {. n7 L( g8 K) | schedule.at$createAction(1, actionGroup);
: ^+ }5 t; U) g9 c# }: z schedule.at$createAction(2, actionGroup);
( _, `/ Y% h3 H' [
! g/ n% d+ M4 n& M- o } catch (Exception e) {% X) B* L2 Z0 [% A
e.printStackTrace(System.err);1 H, U( h/ U# M$ x1 H
//System.out.println(e);: a9 Q8 h% Z0 `1 K* [
System.exit(1);7 L; R% l" C! x
}
' ]; Z# [+ _5 T2 T# P5 e3 T9 ~2 T" a- L3 l
( L* J$ T5 U; M2 }7 ? }
C/ W' l7 ]1 U' }
4 R7 s1 v' H6 V2 T private void swarmSetp() {# p6 t. x, K% z! A7 o
list.addLast(new Agent(Id));0 F# q5 j0 M) K, \! x
Id++;) ~. ?( u- Q& n* R' ^ _% [4 {
}
. I2 l$ d) g1 z) [! N
# g1 n+ n7 j4 e: u" ] public Activity activateIn(Swarm context) {* w w; ]$ J, d# a& i! Y, U+ `
super.activateIn(context);
1 l5 Z( J6 x( m1 N) Y schedule.activateIn(this);# K5 Y. j5 j* ~. @
return getActivity();
" R: f+ q" @$ |, t$ x& ? }6 O( x2 G @- [ r
( b0 Q% {0 i" T' ~ public static void main(String[] args) {. {# x6 J4 y3 Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! H. I" ^$ R! `* J+ h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# y' J6 H8 T! ^! L1 s swarms.buildObjects();2 A q. x2 o/ g+ H q. h" E
swarms.buildActions();
7 e1 ^* x6 I7 v" }# _6 c4 w9 f swarms.activateIn(null).run();1 d$ W5 O, o7 T4 o& v
}
* l* ]5 W0 ?. m" Z& M
+ ~; N V+ G7 }3 L. F1 G& m} |
|