|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) C5 x( r; w. n4 f0 v% r' l& k; O, M2 U
( W+ K. b J: A: f. Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 I4 k$ k* n8 s; C9 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 X0 O; T3 Y* k
swarm.SignatureNotFoundException
- V3 U1 Y2 C& q at swarm.Selector.<init>(Selector.java:76): v* g# [1 K& ?) N$ P! m. }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ f4 I4 \1 G# w+ \8 q at ActionGroupDemo.main(ActionGroupDemo.java:67)
( ~. G/ N. K7 x/ k1 q5 `- }0 ~; ^/ I
& H) n! ]2 T S% w+ Mimport swarm.objectbase.SwarmImpl;
1 S. X3 u4 a+ ?% V8 Mimport swarm.objectbase.Swarm;9 O) @& E* v6 |- q- I1 z
import swarm.activity.ScheduleImpl;" m6 G4 y; [" T1 G- z, F
import swarm.activity.Activity;" W0 [7 W" q c$ H# c! q
import swarm.activity.ActionGroupImpl;+ Q, S: R1 l9 `- i
import swarm.collections.ListImpl;
/ l# _9 q: y6 |# L8 ]1 uimport swarm.defobj.Zone; ; [% X% G$ V2 _ q
import swarm.Globals;
2 L! d9 c/ j9 [: k/ y2 N; Y0 Himport swarm.Selector;
0 a' _! j8 R6 a {* B% X- U$ \import swarm.activity.ActionGroup; # _8 C8 H$ e+ C2 p7 O! X) X: f
class Agent {2 T1 m8 B4 G9 x8 k( _' W7 ^* P
char id;$ L) j% c+ R: B& j, ?' b, Y$ |
, ?/ o7 T1 u/ G2 Z4 Z; F' v$ H2 p
Agent(char id) {
( V ^* v' Z n) z3 o4 [) R3 P this.id = id;
5 h& p" }% z' W' L) P. x }
7 _: c( P* f4 n3 U o1 ^9 e* r& C; J; G# \- [1 {
public void agentStep() {2 w" x! j. h: i! S
System.out.println(id + ":" + Globals.env.getCurrentTime());
: n5 j& `4 l8 y, G5 N( ^2 Q }
- z( a$ o* s/ J8 ]} V1 Y9 o: q# r& o
% P1 L$ J5 T3 _
public class ActionGroupDemo extends SwarmImpl {
6 G; {0 A* { ?1 m D8 A4 i ScheduleImpl schedule;/ X# Z7 M* B! i/ g5 I# r
ActionGroupImpl actionGroup;
. Y9 b( _7 s( p$ ? ListImpl list;; [1 `- g0 B; [5 r$ t1 R+ I
char Id = 'a';
# x" N' b3 w1 A A+ K) ?! g ]3 W7 Q% @7 a8 h1 P# M
ActionGroupDemo(Zone aZone) {' _& B- `( B+ v4 l9 }* e9 ?
super(aZone);9 f j* Q1 W; I( V& C5 a0 e
list = new ListImpl(aZone);
3 B! A; G) i+ D$ s, j, T! l swarmSetp();5 S7 v6 x3 M# N1 A* o1 Y
actionGroup = new ActionGroupImpl(aZone);$ R- h @5 j" h. B% t. k) m. J
schedule = new ScheduleImpl(aZone);+ R% m. l7 F! q( x6 L6 f
try {
! D; P7 ]$ P& q Selector agentSel = new Selector(Agent.class, "agentStep", false);
# J! _# [6 K* D# }+ s+ Q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
b! j7 { o" p2 d. L$ a4 w" i! H( V
4 N% G' |& c( E+ _7 D5 b% i H9 h actionGroup.createActionForEach$message(list, agentSel);. h5 q$ i0 s5 k
actionGroup.createActionTo$message(this, swarmSel);. a' `# g, b( J6 q7 ~
schedule.at$createAction(0, actionGroup);
& v0 x8 E8 k% X9 u6 g# j3 k schedule.at$createAction(1, actionGroup);
) J% T5 v8 [ n: Y; c$ u H7 V schedule.at$createAction(2, actionGroup);6 z* V1 G+ |: c
* }$ N$ k; Y- b; T
} catch (Exception e) {* `( m( x- I0 X
e.printStackTrace(System.err);
7 }5 e) z7 E# Q //System.out.println(e);, V7 Q- F m0 e
System.exit(1);$ C3 F5 p3 i8 f7 r2 y [9 H! ^
}" P3 u. |6 {' Q8 R' m
- A. ~6 a3 o' U: S
* ]5 v( c9 t: {" }/ h6 y& S! `
}" q' z6 ~9 E) Y4 Z
. O; m4 K/ f' ]' X' D) A# \ private void swarmSetp() {
. `- ~4 U9 R' V. L0 v list.addLast(new Agent(Id));) T+ s# O3 T3 Q( ^; R J* H
Id++;6 Y6 _8 x$ S# |# {- k# W
}
, @0 C, N0 c+ @) o
+ I( Z+ \9 ~/ j9 L: C% d4 j public Activity activateIn(Swarm context) {2 a! {9 k( I6 C) B7 D E( `
super.activateIn(context);( K6 r# _8 Q/ x: F
schedule.activateIn(this);0 w ]8 V7 S" r( o
return getActivity();
7 v) D7 B; F1 }! V6 C& U l1 H! { }$ S% ]( m7 R3 r7 G2 n; p0 w# f
% u$ B, z2 t, e5 \& D
public static void main(String[] args) {% d1 i- u) s$ S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 j4 `! Y( [. x! V. }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 }* E' w. g+ l- i5 z% [' D
swarms.buildObjects();
5 E c4 m1 I+ a- m; J! w I F1 h swarms.buildActions();; ]! g* z" e/ U0 O l
swarms.activateIn(null).run();
: C' {0 I. H) Q5 m& ~ }/ c" X3 h; X. X9 L! O# U' ?
+ _: i2 I: O+ ]7 ]" ~/ |) L3 `
} |
|