|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! x7 I1 E5 A4 x# b: s( D0 V M/ G: D3 r8 Z! x/ o. }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, w) i0 m1 i5 D1 D* I$ N+ D) A/ X, \. i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 a# Q r% v/ \ g( K A
swarm.SignatureNotFoundException$ s3 I$ h; c" f8 a
at swarm.Selector.<init>(Selector.java:76)
8 w$ @! U# W/ o N( } at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 {; r( l0 f& x* l; M2 R+ w+ I
at ActionGroupDemo.main(ActionGroupDemo.java:67)) c/ b5 H8 g5 w
7 v$ z! k# F/ z! P
9 d4 l8 g& g2 j5 v
import swarm.objectbase.SwarmImpl;8 r9 O* X5 C- j6 _% v2 I9 k
import swarm.objectbase.Swarm;3 s9 o( s/ \5 _9 C! i
import swarm.activity.ScheduleImpl;; x- ^' Y7 y, r; a: D
import swarm.activity.Activity;
9 C+ C. n5 f0 Oimport swarm.activity.ActionGroupImpl;" U6 [1 D) l" \% M$ v. Y6 p
import swarm.collections.ListImpl;
~' f8 m" h3 X2 |6 M! m9 }/ nimport swarm.defobj.Zone;
" o4 s; B$ j/ C) _; limport swarm.Globals;
* o# z' x" C7 I" g' l& z1 pimport swarm.Selector;
; P% \ n8 c3 wimport swarm.activity.ActionGroup;
$ U* E0 N% k8 q: u u5 Tclass Agent {" Q- ?9 X5 n6 q; y7 h. R X# v
char id;1 C$ b8 a! A5 X9 C% [
" N0 [; X, k4 X Agent(char id) {
6 j7 P v. e% Z# i2 u this.id = id;! h0 S9 B4 w. k: \
}
- Q# D9 r& _% Z( ^
4 b, |3 h# W/ }; L6 S3 M* ? public void agentStep() {5 L4 S# l! z* @! v/ ^4 |
System.out.println(id + ":" + Globals.env.getCurrentTime());! l; O1 d% f# B$ o
}1 u5 P) J+ N! ^& D# ^/ u/ U4 m4 T$ H
}
$ H- E% c# [+ F; T3 ]; m4 Y$ I) y7 w8 P5 v/ O% ?* B) Y8 ]
public class ActionGroupDemo extends SwarmImpl {
7 s/ g) Y9 F9 n ScheduleImpl schedule;
) E/ Q- f9 O2 v) Q/ r) c ActionGroupImpl actionGroup;
; e. _# A% z: e, C5 V; D4 J ListImpl list;
) Y' l6 r* ]5 Z$ P- @4 Y, c# ~ char Id = 'a';
: J7 v/ a, B% X3 {
1 p4 d# D# o: e4 l u ActionGroupDemo(Zone aZone) {
6 ^2 n$ B ?. z) |* _, z super(aZone);' Y, L$ s% v8 J- @- T" V
list = new ListImpl(aZone);! T$ c% {8 q( _. m- C
swarmSetp();
4 X, W( N% X& m; j+ N: Z8 y( t. s actionGroup = new ActionGroupImpl(aZone);
* B4 ^$ D2 V0 _& W6 ^; q schedule = new ScheduleImpl(aZone);7 h! p! @9 J; y7 n/ z3 N
try {
0 @+ ^; j0 n/ b7 A- s Selector agentSel = new Selector(Agent.class, "agentStep", false);1 h1 {$ q/ v% I5 @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: Z: q* Q+ W" i
! c) g* }* ^9 i( _6 y; A& }" R
actionGroup.createActionForEach$message(list, agentSel);
6 A; B3 \: S* r4 h* m. k, J5 D actionGroup.createActionTo$message(this, swarmSel);
& g& D! [. g* u9 m* ]' I schedule.at$createAction(0, actionGroup);: @* o3 c+ M* ?0 ], b0 T% l
schedule.at$createAction(1, actionGroup);- [- L2 ~7 q/ @! ?8 Z- B
schedule.at$createAction(2, actionGroup);% k3 E' K& r9 R; K7 w& g
f8 |1 b0 y, x# C
} catch (Exception e) {+ a0 W) s5 U0 h: I4 z; o
e.printStackTrace(System.err);
% r$ q4 _: _4 q' _1 | //System.out.println(e);+ f9 j7 [7 D6 @
System.exit(1);: d5 `5 w! F1 T% I% J5 L' f; H
}
" A( i4 ~0 Z8 g- ^
+ ^0 {/ V' n) [' G& z% b
+ M& {' y# v- O' e4 f } x+ L) x/ B9 p% x. e
" h6 ^3 v7 y/ t* p
private void swarmSetp() {
4 y/ r" J Z( u& t) A list.addLast(new Agent(Id));; S6 V: Y, g; K0 K
Id++;5 k8 `, `" ^% |( [7 t/ t. T, T
}
7 ~, ]! b- h! S8 c
$ c& a: @9 d0 z; n7 J3 i% ? public Activity activateIn(Swarm context) {
\ @$ J& L; c! M; N super.activateIn(context);1 m3 `( _( o! y6 r
schedule.activateIn(this);8 W4 O) J+ ~* d( T! T+ ?
return getActivity();8 X# v: s/ w" e# O
}4 Y6 N3 b N/ W, s$ \& n( L
% t( q6 t0 k2 F" T
public static void main(String[] args) { K7 o; C; O/ O& p( V
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) D8 H" C: g) `- [' ^2 A5 s! u' D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! y/ i! c( R3 b. c& z. {4 y swarms.buildObjects();
3 V2 {& R! B7 c" q) {3 [ swarms.buildActions();
2 E% `4 B& y- t. U% A swarms.activateIn(null).run();) m# K. C: Q2 K- k+ w
}
3 \ T# X# N% q; N) n, s/ j1 x! C9 m# t: a' z0 L( J) U
} |
|