|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : `; e/ R0 i; }+ {9 @0 d& ?) L
" n: \0 c1 m) b7 C" r8 k; }! ^ u; p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ ]2 K, X: p* v1 `# m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 F: f* T- h! r+ o4 |: L6 }$ G$ U5 v
swarm.SignatureNotFoundException
. G* ] _9 W2 b- o% z* a at swarm.Selector.<init>(Selector.java:76)" W$ c9 G: x. L1 @- B- W0 B' X+ A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 \! x2 d) E! P- Y at ActionGroupDemo.main(ActionGroupDemo.java:67)7 M* B) f, f9 B
* Y. x! m; y# v& p9 `& o) X% L- @( X" p
import swarm.objectbase.SwarmImpl;! T# C1 d' _, C
import swarm.objectbase.Swarm;
- J% y: X3 K' ]1 Kimport swarm.activity.ScheduleImpl;/ _$ `1 q- N; T9 V( q
import swarm.activity.Activity;5 q' w' u, z2 D) }' o0 L
import swarm.activity.ActionGroupImpl;
+ H/ y8 V' Q# p2 R) ~# @import swarm.collections.ListImpl;! Z. X& r4 C0 ^" Y- S |8 `
import swarm.defobj.Zone;
; _" F! a7 T: _, g4 A& Zimport swarm.Globals;
3 {: e$ z" G6 c: {import swarm.Selector;4 s$ u$ Y- w3 A# T+ H
import swarm.activity.ActionGroup; : S3 B4 t! [- {2 J8 E8 V: f
class Agent {* u+ L) ?. N7 f& W& [) j
char id;
8 ]$ F$ j! P/ D3 C( g% I- L
( u: s! G- k6 V9 D# ^" Q Agent(char id) {
* b* P/ S" R$ m3 U6 }& u this.id = id;
6 v: G6 Y4 G2 k. p }
3 z% t* k9 f |$ g0 z; |& g1 p ^: D- v7 i- f4 a
public void agentStep() {+ C+ x8 `$ z2 c0 Q
System.out.println(id + ":" + Globals.env.getCurrentTime());7 }1 k5 [7 O( Z; @; J8 U
}
) l( p7 J+ W/ v5 [( L, o2 r}
% S, W( X) I1 q1 ~6 P" v6 d5 j( h4 Y* `: V0 }1 g
public class ActionGroupDemo extends SwarmImpl {
0 j- f$ [- Z/ Z( j& B8 E ScheduleImpl schedule;
8 L+ {# g1 ?. D: F4 p& k ActionGroupImpl actionGroup;
% x0 c5 T3 O- r" X z5 E ListImpl list;
, K: @# ?# [( u- x S char Id = 'a';5 x! }$ B! T, c: \3 q
% X! w+ n/ {! ]$ F ActionGroupDemo(Zone aZone) {6 B. l3 h9 y1 D3 w3 ?
super(aZone);
8 c5 R1 j2 I" l* O, F& t* k! j list = new ListImpl(aZone);( @8 b5 R# Y7 F" z; S
swarmSetp();
3 \" Y" a6 k) C. u actionGroup = new ActionGroupImpl(aZone);
J* m) k2 f% z8 D9 |. q schedule = new ScheduleImpl(aZone);
1 N6 ~( b. f( h% S try {7 ?5 M2 v" ~- t( C2 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 u* \! }2 Y; w; x/ X' N7 m Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% G2 R1 j3 y3 y5 g" n) x
9 G6 D: g# {* ^ actionGroup.createActionForEach$message(list, agentSel);
# Q; @" B" \, b+ x actionGroup.createActionTo$message(this, swarmSel);
# O: l* k% Z4 V: r schedule.at$createAction(0, actionGroup);
9 {- p" V- Z9 E9 | schedule.at$createAction(1, actionGroup);
& c: f0 y- }1 N0 N: I4 d1 A schedule.at$createAction(2, actionGroup);
2 O s0 t( e G6 }. [3 F4 W
1 M6 ~) B( O) {2 p% b( E } catch (Exception e) {
4 X& ` A) q/ { e.printStackTrace(System.err);/ O5 X1 G n* R% k5 \* t
//System.out.println(e);
. V) H/ B" r' j+ F! e System.exit(1);
$ X$ Y% z: |) k$ H }
3 W9 h+ `) L' S. [ D6 S
$ c( g! i4 Z! V# a1 L& J/ C: r" Y6 H$ a: b* f
}& a; ~( m' j3 G* V6 H
0 a( r) b4 @8 o2 i9 }* | private void swarmSetp() {7 q4 D0 P [2 P
list.addLast(new Agent(Id));
0 u) t- Y1 a$ T! M7 d2 ^$ Q" r; ]: G Id++;6 m; |( Z; }- C3 U) H
}
) [6 d4 J: ~2 Y0 U+ B# V7 G r- @' F. y; P( h* [
public Activity activateIn(Swarm context) {
! _- n5 y2 H" V6 ] super.activateIn(context);
, o, K" r& ~: B7 y ^2 c L' A schedule.activateIn(this);/ m+ y8 _# A) {
return getActivity();3 b1 p ]5 b) [! R5 t4 d5 M
}
. Q/ P! j2 h0 E. \
1 E" `# [; `+ v# g0 B; i& A public static void main(String[] args) {
: p0 _8 {& d% j$ P4 f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% U# O( [" P7 t, ^; k# f5 v7 x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, y2 E8 M1 d$ R; @& |( o& F
swarms.buildObjects();
2 a& S {" ~" k z/ V I swarms.buildActions();
9 u- U ^9 N: v/ G! w! w( W swarms.activateIn(null).run();
$ M0 l I$ c! G; h% @ }
! J7 \- q7 u6 n1 t
9 ^' Q( z0 ^* K} |
|