|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' c/ ^* V' P; f! Q
. Z3 ?6 Q- Q b$ Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 F: w. Z& H8 F" p1 [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., @0 y; u: w, W' e0 g
swarm.SignatureNotFoundException
; P8 P G! @" e' ? at swarm.Selector.<init>(Selector.java:76)
4 y* K- F1 S' ?' ?' T, w; q1 } at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 ~* n! I v' R$ E at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 Y, }' V" C! r P# B |8 |3 R( i3 G( x1 |/ K3 L1 b3 L
' ]" n2 E* i) I+ ^
import swarm.objectbase.SwarmImpl;" c( U$ y! e' ]
import swarm.objectbase.Swarm;
. k: \7 b" Y2 U% Z( iimport swarm.activity.ScheduleImpl;$ i% y1 p! O# K1 j _! f
import swarm.activity.Activity;
! U1 w' W, {8 d2 X' yimport swarm.activity.ActionGroupImpl;4 r5 }* \* C m, A' [2 ^/ e0 r+ q
import swarm.collections.ListImpl;
1 Q6 g/ r! F9 O1 K$ x3 }import swarm.defobj.Zone; 0 ^* \0 o. b& p' ^( Q
import swarm.Globals;
9 L- `3 `! e7 _* d* G8 W& e/ aimport swarm.Selector;1 n" ~! ~/ W6 U: \$ Z! o2 [: |
import swarm.activity.ActionGroup;
; I/ f( n3 t% J3 F$ ^class Agent {
4 p3 n" f/ f$ B$ w/ h/ c char id;
* s' j2 P: ~) X1 z" Y
( D6 {0 b- ^+ Q4 s ~ Agent(char id) {
5 f% t" S& x" ]) Y this.id = id;
: }, g4 ^, E; e5 l9 D3 ?- B0 n+ a1 | }2 O" u3 ~; u0 t# V+ E4 v
& _9 n3 E( y- C8 e8 U! W2 P public void agentStep() {8 w+ W- j: B0 w; e& ~& I
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ \ E2 n) h" I* _- ~4 ~ }- h# c, y3 I2 f7 k% g4 F5 Y
}
; G7 m% D8 g& G2 W( ^& t8 k+ v* M, M8 I4 q# t H
public class ActionGroupDemo extends SwarmImpl {! d1 b8 B3 h& |1 X/ |( a: I- I) r
ScheduleImpl schedule;
5 Z$ `2 n9 Z$ {$ t ActionGroupImpl actionGroup;
2 C) J: c6 Z& k1 T$ b2 t+ k ListImpl list;8 q! Y! Q3 W! k: \9 s0 T
char Id = 'a';
1 U9 s& h* C, \1 S- Z3 H$ E
% E+ L P6 s. Q9 k8 X ActionGroupDemo(Zone aZone) {7 j& o5 ]6 }$ K! _
super(aZone);- f4 K4 {& m% t. J
list = new ListImpl(aZone);" h* x" T4 K$ N9 J, }- _
swarmSetp();
( V4 _8 C+ I8 u) U5 s actionGroup = new ActionGroupImpl(aZone);0 g# L4 h4 m6 ] Y- _. I
schedule = new ScheduleImpl(aZone);
0 ]6 }1 B. {0 P }3 I0 ?5 F try {
- X# w2 J# d6 O0 Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
; V# e, A9 B; l9 l- t" Q& w Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# _! q5 t& f4 V2 |
" w/ [4 e2 u' M Z7 a
actionGroup.createActionForEach$message(list, agentSel);8 | F8 H, }- _* J- y
actionGroup.createActionTo$message(this, swarmSel);- z" ?! e& Q% Y4 F7 U
schedule.at$createAction(0, actionGroup);
/ `- \4 l: ^; I" f) Z/ t schedule.at$createAction(1, actionGroup);6 D% b. }: C& ~3 c, l0 v& J
schedule.at$createAction(2, actionGroup);* N! R7 w' B1 ]: M y# E1 q( C
& g7 h% L; A( N/ g% d9 W' u3 @. _ } catch (Exception e) {& O4 q" q8 U+ }$ Y- i- P% Z
e.printStackTrace(System.err);1 ^6 U1 @7 d. L* {$ m6 U# t# t4 g
//System.out.println(e); P0 M- a, T$ t) {6 |
System.exit(1);, s: G6 N9 n7 P& [" ^/ u6 r0 N/ F. F5 i
}
4 J; y/ }0 A9 v5 g) c/ P' ]6 e" {9 {( K, A: R
! @7 `( O1 Z7 |. Z: R
}
8 ?/ k# @! I3 V4 ]1 J4 a5 Y) C V% \& ]: i. W8 O+ f$ l2 w0 K
private void swarmSetp() {3 T3 S0 E. I: Y
list.addLast(new Agent(Id));
) N0 j! D. ?/ b, O# w, C4 N9 U Id++;
( ~1 |5 c+ e. \3 S5 M! i }# a3 q! @2 w- [
9 L, n; @2 `3 i6 X public Activity activateIn(Swarm context) {4 t: }5 I# e5 a. P) _( g! l I
super.activateIn(context);6 O/ h. v& u2 c/ I2 D0 I/ N) X
schedule.activateIn(this);5 ~: S. K/ |3 K4 V7 O7 V+ x
return getActivity();$ ^, Z: h C, @3 f) ?/ b0 D2 t
}
/ ]5 \, X ]. n
9 o! h A8 J& S T0 u public static void main(String[] args) {
, {. {1 K. X' } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 b& y& W+ U& m; h& ^. C4 \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 \5 u" d4 K% d2 G" K swarms.buildObjects();
% ?4 `6 I { Y2 B P, K swarms.buildActions();
* Y) T7 b( D& _! k" K swarms.activateIn(null).run();
6 `- h$ S9 J4 h. r# H/ w( }6 b }
# ~7 T* r$ }+ r( `$ k u# m! @ q7 J. f0 M6 W
} |
|