|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + [) I% X5 o0 a( l& i
- a, x- B0 A- x8 y- z) w+ C7 x' W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! o" A M; r1 @" R; k5 M+ ^7 B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% i5 o# k( \* i) s }, k s. y7 j
swarm.SignatureNotFoundException
: I3 y! e+ S A! I r( O9 K* ~ at swarm.Selector.<init>(Selector.java:76)
0 ~' k3 |8 m' I6 J at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 I; {4 B' T3 ?! p$ | @
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 J0 d3 V7 s, a) l7 J
# f9 j" ~* ~3 f& S" x
* _1 E6 y: [9 Q* Z- t* H% Oimport swarm.objectbase.SwarmImpl;$ C, ?, l- `7 n. \- q! B. h! \1 u: w
import swarm.objectbase.Swarm;9 L+ s4 ~* H4 o7 l/ C1 Q0 O
import swarm.activity.ScheduleImpl;' w' w3 w- }- { P9 E
import swarm.activity.Activity;
/ f! F( ~+ [4 X" himport swarm.activity.ActionGroupImpl; _1 `1 N& S8 b& {
import swarm.collections.ListImpl;/ _0 m: \( g# H. h# t
import swarm.defobj.Zone;
. v S. R; a( n7 d3 jimport swarm.Globals;, r7 M6 u: r4 X8 {4 r$ \1 R' b
import swarm.Selector;
, @ x3 l$ A' I5 ]& S3 Uimport swarm.activity.ActionGroup;
' ~# a- G1 h+ t+ t# j- ]class Agent {! \9 o- |/ L/ N# M8 u
char id;2 [ j: d0 O4 ]1 q0 S
2 q( o# T1 n% J9 M Agent(char id) {) S# Q5 [3 b+ o& D8 d! _. p8 o
this.id = id; |; z( O, s8 r% g1 m. I u0 @
}7 D) `0 O! P: f# o
+ P/ e( r3 g, j' K- \
public void agentStep() {- i2 H+ N X" x4 H
System.out.println(id + ":" + Globals.env.getCurrentTime());7 y5 w6 p, e5 L- h; U- c1 Z
}
$ T# x! e1 i. M) c}
& W2 r+ [( ^" \7 O: @5 B4 V `3 ?1 |' h* \: F
public class ActionGroupDemo extends SwarmImpl {' C6 `& A( a! I2 ?8 y) _' \
ScheduleImpl schedule;
$ s8 O ]$ `: A; [( w9 G ActionGroupImpl actionGroup;
$ K* k G9 e( x( G/ H: R$ M G$ [ ListImpl list;& x Z1 P# `* C I4 L
char Id = 'a';& i$ Q8 W# H7 _" V# Y5 n
- e8 S o% L6 H% c
ActionGroupDemo(Zone aZone) {
9 D3 |$ Z- z2 S' V: w super(aZone);/ i8 z0 O1 S! h; a. K2 F
list = new ListImpl(aZone);
* _3 o0 ?# {8 ^. v* t% i swarmSetp();) {' W$ D5 f( ?' l: W
actionGroup = new ActionGroupImpl(aZone);# x) ?9 ]% Z! P# ]
schedule = new ScheduleImpl(aZone);* B$ M! q7 D8 z3 r+ r( P
try {
2 i5 ]$ y5 C! m, Q1 |0 T Selector agentSel = new Selector(Agent.class, "agentStep", false);6 v4 [4 A+ L& ^/ y" p9 `% Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 \: }1 M$ C9 a
5 N1 ?0 b8 J( @8 k9 V- L f; U
actionGroup.createActionForEach$message(list, agentSel);
6 H; y9 O E" q3 n actionGroup.createActionTo$message(this, swarmSel);" @' e& e8 h2 p$ P$ V4 A
schedule.at$createAction(0, actionGroup);
' S9 v8 }1 g. I/ |! i) s schedule.at$createAction(1, actionGroup);
# T6 W' f$ M! K schedule.at$createAction(2, actionGroup);& f# [- y% c/ C8 P/ N
$ B2 } k1 A& U$ }+ x: i
} catch (Exception e) {
3 s# w, ?7 q3 N9 `3 F1 x2 v% G e.printStackTrace(System.err);' ?9 `5 ]$ V$ R/ q: \3 H
//System.out.println(e);
( j. v3 s. F) r# n System.exit(1);) l5 u- P5 z ?
}: g0 I2 k1 W4 O- {/ l" _
$ E" L% R1 I4 X
# _# z3 ~ r6 F! V8 H6 S }
3 {1 A w m E9 t; O$ m( v$ I+ C; G" [9 H4 ~$ W/ b
private void swarmSetp() {* \+ I0 n) g' C- g# t0 m
list.addLast(new Agent(Id));+ L& ?* R. U! ?9 r2 C
Id++;/ _" @! Q1 M! P( A6 h
}
% G& \, W9 n9 B J2 I! D; _5 ?! N9 g+ S
public Activity activateIn(Swarm context) {( j9 t1 p! T+ d4 M9 i
super.activateIn(context);
$ J* G) i, D% V( P/ G% {0 r schedule.activateIn(this);
% S8 l4 e% ?: H: v! o return getActivity();
% J1 D$ V1 ~2 u# X8 M$ U }3 G2 _0 ]0 F" N% ?
0 k& Q* G8 K$ T& M
public static void main(String[] args) {
: w2 G0 |# x! E2 U# _! ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 L- ?9 u+ L9 |/ ~! H, q- @# M Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* A% W) ^( ^3 p8 N- Q, D# a. x/ w swarms.buildObjects();
5 h) m3 H5 K Z0 I swarms.buildActions();, x4 H1 D6 d) J. s
swarms.activateIn(null).run();- u% I/ N6 ]- j
}& j1 b. G V7 O1 e8 J
' R9 i3 P; r/ X% x" p3 j/ V7 A- \
} |
|