|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! T! ^- ~& w( H/ t6 h
0 J. A2 m( c+ }% @" F- {7 I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
E! ~8 _" Y$ c; B! ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: j3 Z, ^! C. a8 Y+ E' k1 ]
swarm.SignatureNotFoundException. w. z: @6 f$ {1 M0 {) w9 M
at swarm.Selector.<init>(Selector.java:76)/ `/ V- U' m! @7 _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ T- ]2 P" N% ` at ActionGroupDemo.main(ActionGroupDemo.java:67)8 `8 M- F2 G) n ^7 V9 v
- ]' @& B) T! X! o
2 \+ R- O. B h
import swarm.objectbase.SwarmImpl;( A$ ~3 u2 N1 s! p* u
import swarm.objectbase.Swarm;& ~' \, q6 _3 g$ B: x e1 K; G3 u
import swarm.activity.ScheduleImpl;- t; l( q. @: K: q# P* G8 u9 g
import swarm.activity.Activity;, Z2 j4 [+ Z4 F9 J3 X
import swarm.activity.ActionGroupImpl;
' V5 A. p- B! f5 c0 n/ U6 V" mimport swarm.collections.ListImpl;
; Z$ z0 T* f4 j( |6 \* W" himport swarm.defobj.Zone;
0 w: B2 W0 E H$ ^# w. x* pimport swarm.Globals;! x2 o6 ?" f* G5 R
import swarm.Selector;
+ h4 d1 ]/ A5 q$ C# M3 Jimport swarm.activity.ActionGroup;
3 o# T$ g% K8 o# kclass Agent {! i4 E7 o7 \( z/ l
char id;8 L0 J- N) R9 R9 z Q1 R
% V0 i1 T" m$ O9 U; x9 Q
Agent(char id) {
8 Z `% ]- E& k; d. w# S0 Q" H# p this.id = id;/ M( f0 n1 h7 z2 \& ~- S H
}- ^: ^/ l: q' Y/ a* m( k
- g: J2 X% n& o, }6 J
public void agentStep() {' X( j2 n! K5 A
System.out.println(id + ":" + Globals.env.getCurrentTime());
# t" ]# I/ K, K# P5 y' O: Q }
6 A0 E3 S4 Z: z/ j}
0 `+ E! _0 d# M& x6 A2 M v
; U) L1 W# A8 y! w E9 R7 ]9 lpublic class ActionGroupDemo extends SwarmImpl {
# W9 [ K( Q" S* L: u* ]0 _ ScheduleImpl schedule;* W8 D( ~/ M( {; \' m4 ^- _% t
ActionGroupImpl actionGroup;+ \! G6 L, k0 O6 I" x9 B3 X
ListImpl list;/ T6 L% s! X7 I+ [
char Id = 'a';, ?$ x* Q/ e, K; ] F
2 r( K3 n5 I r4 e' J ActionGroupDemo(Zone aZone) {
, J5 c& N0 Z) }% e6 w6 a% l super(aZone);3 I$ c$ Z6 C4 s8 B4 B
list = new ListImpl(aZone);* x8 P0 J$ m" x J
swarmSetp();
8 f, S4 Y* v; z7 \3 j actionGroup = new ActionGroupImpl(aZone);( R- Y# q+ s8 l, f
schedule = new ScheduleImpl(aZone);& [+ d% y, I9 t6 H C
try {. V" J. `* K- t# I& y, c
Selector agentSel = new Selector(Agent.class, "agentStep", false);% }9 b ^/ a2 J* I5 ]2 w e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 \, M! [# v$ f9 p N, Z' H / U6 @9 p" g+ v: B7 m( P
actionGroup.createActionForEach$message(list, agentSel);- [! v4 h3 o$ d: `4 I3 |
actionGroup.createActionTo$message(this, swarmSel);
0 Y* t9 n( c2 t schedule.at$createAction(0, actionGroup);
3 F* n- K3 V2 n% m% P' a* c3 e schedule.at$createAction(1, actionGroup);
H/ h- ]; L3 O3 [' p; \ schedule.at$createAction(2, actionGroup);
/ z% r6 T8 K- d: e- T o% v ^ }6 {! S3 ?, G" N
} catch (Exception e) {
" K; I6 `- R' R+ P& P- @. @ e.printStackTrace(System.err);
5 [% b' b1 K. V# u; {$ c //System.out.println(e);- {' e( D4 a8 q! j. M2 {
System.exit(1);
0 ^- l3 W" S! { W }
( ?( U e% ]/ q* }7 ]: I3 b) i' {) N v) Y9 @" O
2 m( [' }0 g \4 @ }0 ?! f3 m5 R7 V9 T
! ]1 y) R# s* `- E8 v+ k: G6 o2 C
private void swarmSetp() {( a& X- }1 c. K
list.addLast(new Agent(Id));
! V, w& V9 K) W3 M2 z7 q Id++;1 d% A$ ?$ P: c, }
}' S: ^' s; H0 G5 S( b5 {4 E
5 h' Q" m8 b# K3 z/ B, w( S9 U8 f% | public Activity activateIn(Swarm context) {
2 o5 H% Y( ]. J t j. n* U super.activateIn(context);
5 w* M* q) x% J7 X$ l. O schedule.activateIn(this);
# Q: z& `+ T5 y. W. o7 |% B( ?8 }9 b return getActivity();3 l1 J" m! {5 Z& Z t6 F
}. ?* }# b. E+ C& h) o3 P: w+ x
& p9 B* d/ s9 \# k4 c$ F Y- e
public static void main(String[] args) {
8 b1 ]0 b' e( }& `! K M8 s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 L) n" u1 j$ t* N+ J3 C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( L8 M& P- j6 n5 H4 Q" [/ M
swarms.buildObjects(); m' }+ [1 ]* G
swarms.buildActions();) X& ^4 z! o8 i: H# B' D7 S
swarms.activateIn(null).run();
( w+ i$ j6 D# a! f* R }
# ^$ B2 H/ u3 S/ d! f1 B4 c
* A% E' P. ^' F. Z# ]: D} |
|