|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
Z" ?: m0 m9 R: t) K2 o7 U8 M/ J
7 v; N; y! e5 m% a& y3 X: `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; M' u, e5 g3 p' ]9 s4 A8 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 x4 u4 ^6 M6 C) M3 _$ v, Fswarm.SignatureNotFoundException
& s1 w2 v/ ~7 K8 g6 i at swarm.Selector.<init>(Selector.java:76)- D2 [, d6 @# u* x% D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& i9 A* n9 ^3 U6 k! t/ ~9 J$ [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- E( ?5 k) J, l7 ^/ F J2 F8 H
, E# T# R$ M6 B0 G4 [
; z0 L7 I% {! himport swarm.objectbase.SwarmImpl;9 i5 [8 Q) ]! x
import swarm.objectbase.Swarm;
5 Z- w1 k2 k* Timport swarm.activity.ScheduleImpl;( G0 y ]- Z4 I$ ^% I; d
import swarm.activity.Activity;7 i5 n+ c& V4 @: h
import swarm.activity.ActionGroupImpl;5 v8 S& o! D Z- _8 u3 h& }, g9 ~9 c, Y
import swarm.collections.ListImpl;, |3 O: M1 ?* f9 E* Z8 a
import swarm.defobj.Zone;
8 n9 h& V7 _5 G Oimport swarm.Globals;& N/ {$ q% R* R; i1 |1 v
import swarm.Selector;
- R% Y& `! r( L5 S; ^; B( g9 Nimport swarm.activity.ActionGroup; : f3 d1 M% ?3 u/ n1 }
class Agent {& y2 I! N9 v: R. Y' S& e1 u# i+ z
char id;
; _7 r4 C, F! k% e% v9 N7 x9 | V' e+ T$ s' N6 l& Q* k
Agent(char id) {
, l6 ~% N/ u X% h. _$ N this.id = id;+ l# z- L# z# L& {
}, }. f, T$ K& }( |
6 v& T9 b1 A, H$ d! R
public void agentStep() {
8 n, |$ o2 }2 k3 c9 v7 s# M% r- X System.out.println(id + ":" + Globals.env.getCurrentTime());' C- ?! r5 q. w9 b/ H/ ?3 F4 H! Y" _
}! E. `: I, W2 W% z1 L! j s
}$ {/ c j- P' ], B& s
8 ~, q. S) m8 i$ Spublic class ActionGroupDemo extends SwarmImpl {6 @; H' C1 k* f( A2 a% T
ScheduleImpl schedule;
3 O" f: g, `: \, h ActionGroupImpl actionGroup;
5 n6 f; M! u, S5 u; `, J( d* f) Z ListImpl list;: r% ]4 R4 ~1 |9 d- W$ L2 F- g
char Id = 'a';
$ _" k( ^: S [* E% v; Q+ Q4 D$ f! p* \# n
) ^$ H/ ^) s( @: s! ^! G7 c ActionGroupDemo(Zone aZone) {0 ?+ f2 V3 A& U9 I ^- \6 z; }
super(aZone);
7 S1 _1 S* N( r5 L4 S0 u: Y list = new ListImpl(aZone);
0 z8 }( } d1 C) j# A4 J swarmSetp();$ |3 p4 v: C( Z2 b( ?. T
actionGroup = new ActionGroupImpl(aZone);
: `, \/ U1 g# \4 E schedule = new ScheduleImpl(aZone);
* L4 b; R0 _* e2 V" K try {7 T) g( Q7 [. j( K$ R9 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ m1 s" Y2 a2 `* S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% w% Q! \9 s3 Y- T& a. o. Z
8 L5 j* a+ g' \# @ actionGroup.createActionForEach$message(list, agentSel);
: u/ N J- h- Y% Y7 m3 Y- X* t- P actionGroup.createActionTo$message(this, swarmSel);/ d- N" u; y, e8 v
schedule.at$createAction(0, actionGroup);
6 s9 c5 Y" R2 G7 g9 g schedule.at$createAction(1, actionGroup);
. ], k) G& t R schedule.at$createAction(2, actionGroup);
5 `+ g" @7 S/ S' B2 H- D6 r' s! w: l
} catch (Exception e) {
, |) }4 J& q3 I# r4 z/ `# v8 W9 C e.printStackTrace(System.err);, m w$ _/ Y8 {- ~2 b7 N
//System.out.println(e);
( `% O0 G. E6 E7 o+ J System.exit(1);
& q5 q' b) ?, c }! o9 i/ a1 z+ s/ D
" J6 P$ x6 D( v* j
: t% N* x5 @ v }
; z" ?$ h! g& O+ k% e2 ]& U5 l1 w: L5 @+ B k& S. L5 O6 T' e
private void swarmSetp() {
' L5 w$ Q3 R+ s% g list.addLast(new Agent(Id));
: `0 Z9 ^. P3 T2 _7 ] Id++;
: l9 b; U/ F; ]1 Z( f5 W5 r" u }
& i& i( R3 y6 w Z: U: L
8 S! o c' B0 Y public Activity activateIn(Swarm context) {5 B" p) P; L$ p* s( l" a" r
super.activateIn(context);8 |0 k( V# S/ x( F \5 \ q0 A
schedule.activateIn(this);
' k; r/ p/ T6 Z0 u) V return getActivity();) e o7 L" i) O6 w% C/ A/ n
}
$ E+ @: y; S8 t. F1 C( R6 N) j& t! o. P( O& n# b3 L- i3 v
public static void main(String[] args) {
+ j/ d2 N( u/ F9 x% w( j Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# v" _$ x; A) [6 J7 P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- l( S9 k3 i0 e3 k# Y
swarms.buildObjects();
0 x5 G9 y& ?, P7 ?8 @/ y swarms.buildActions();- n/ l7 s; T) i
swarms.activateIn(null).run();6 o! z9 M9 \1 t/ G9 b
}
# y: C: b( G5 ^& }4 z/ C
9 m# i: Z6 K+ W$ J} |
|