|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + Y; k9 H+ t" p6 m$ C, L4 F! g9 O
! y" y7 v" E' e8 n5 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 l+ E' P' v8 L& x8 z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, {. \8 q+ o ~/ b$ s0 u# Gswarm.SignatureNotFoundException- p% G. {. O% i0 s% t, ~. b4 i
at swarm.Selector.<init>(Selector.java:76)2 y6 D* u/ p; c1 z4 U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( S1 X% v) H' d- O! n- I/ Y at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 F: m2 r2 ]8 W# K- j) O6 t s k
8 M: w/ W& r& J
+ _7 K7 B4 ?! H& |$ F" Bimport swarm.objectbase.SwarmImpl;
% `; o( R/ z' ?) u% i& Y6 K3 vimport swarm.objectbase.Swarm;
1 k/ Y! P9 t9 B( e( L4 Gimport swarm.activity.ScheduleImpl;, [9 n7 v. _& O
import swarm.activity.Activity;0 W6 F( s) l& f9 Y3 t. s
import swarm.activity.ActionGroupImpl;
: v: _3 L4 ?3 Rimport swarm.collections.ListImpl;
; O3 F/ p* J( v* N3 \+ aimport swarm.defobj.Zone;
% P& K6 p. ?% F% w( m" Dimport swarm.Globals;* Q: }4 ]4 N/ \ k
import swarm.Selector;! N! q+ A% R$ G8 }3 {
import swarm.activity.ActionGroup; ; {* ~4 c6 Q, B" F+ |, `
class Agent {
; A5 d0 W6 f+ [" J, C3 Q" A char id;
) U, n1 S# x6 E
% D+ M5 |& V' Q( c2 u3 t+ X' h) e! B, S Agent(char id) {$ v$ `9 S% |$ A8 N
this.id = id;
" q; z" Y+ t! O" b }, p- s/ P5 Y, H* f5 @( o: W7 h9 n9 g
4 M0 s& ] Z6 X! {: o5 r% l
public void agentStep() { M; P# `* M6 G$ G; d
System.out.println(id + ":" + Globals.env.getCurrentTime());
. j, r& s5 @' n0 l; G8 D }$ r4 B& H) Q2 Q5 x
}
; ~( m& _4 F! u+ X
7 q+ E( X/ m' @public class ActionGroupDemo extends SwarmImpl {
: I6 f8 V' }) n, d! ?4 f H ScheduleImpl schedule;
8 C* Y( \" L8 i1 g ActionGroupImpl actionGroup;
T/ v% ~ b/ |! |: d- U4 j ListImpl list;1 v. M# g/ q$ d2 P! N6 f% \
char Id = 'a';- ]8 E; I- _( W3 @( q# J( m
- V. g1 ?- C* o" ~ ActionGroupDemo(Zone aZone) {
* d- g- T" R" Q3 E q super(aZone);. G A( u/ b' { g. {! |
list = new ListImpl(aZone);
3 g" W6 r( R& }+ T# M- Q' D! y' k swarmSetp();
. V0 t8 O2 J8 N( i2 Q actionGroup = new ActionGroupImpl(aZone);
( @% t8 m- }2 P schedule = new ScheduleImpl(aZone);/ p6 b2 S& X. O% ?9 e
try { K- U ^7 O8 r4 n
Selector agentSel = new Selector(Agent.class, "agentStep", false);" z8 P* R! l- V0 v, g0 K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 F" p2 u; k: k6 `/ [
/ Y0 A5 K8 `1 ^4 M- Y actionGroup.createActionForEach$message(list, agentSel);" w6 A Q, B1 m/ D' t
actionGroup.createActionTo$message(this, swarmSel);# X& Z1 ]3 d% N2 r2 P2 M/ ^/ v" V: z
schedule.at$createAction(0, actionGroup);: `, k2 c; B8 \: [& b& o6 N& }9 N
schedule.at$createAction(1, actionGroup);
1 L2 O8 x1 w! f7 h3 L% e7 I schedule.at$createAction(2, actionGroup);
& }# A5 u4 u& H6 o4 c0 n }
& P) B) i! v* h+ ^$ |8 @7 |# y# W } catch (Exception e) {2 O" J% z( t$ K H5 F2 A
e.printStackTrace(System.err);* a! G: z, [' \% L
//System.out.println(e);
$ S9 x! T! w7 ]( |" Q System.exit(1);" j5 U! \" l* Q w! j$ E
}
. S' `3 H' c6 S; [7 F% j8 D* H* W. I+ S& l3 I( [
: m% U* Z5 E/ K. A
}
# k; W: o" v. t) R5 b0 f# ^3 X0 m0 O3 `, g s9 u4 s$ y
private void swarmSetp() {
. R) z, g( J* X8 u list.addLast(new Agent(Id));4 E6 ^5 L5 H# U" s+ E
Id++;
) F) Q5 x8 n) W }
1 I+ ?5 H7 [8 M5 ?9 k9 }8 D2 w! E- P! k# r( ?
public Activity activateIn(Swarm context) {% C; Z+ W" T1 o
super.activateIn(context);
$ ^; {$ S- `( k8 ` schedule.activateIn(this);
3 a1 q+ m, `* ]& @( C5 t- F3 o5 R return getActivity();0 |& d) O! _. T" q
}
) L: b! A2 f. i8 }7 C" i/ S
4 n J& l% X4 m4 g public static void main(String[] args) {* a2 C: }0 I) E4 ^2 P9 h8 o- m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: \ Y( s9 ?& f+ ]- @/ w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, h# f2 c ~4 O. W' U swarms.buildObjects();
* M+ Q% z; o% t9 N5 Z1 i swarms.buildActions();
+ _, v+ t' S- _ swarms.activateIn(null).run();
( \+ \6 W9 S9 B. ?! b4 ^ }
1 W1 \ J% A; N" O0 r, [! I. t8 e* D8 E0 P+ n( D/ a
} |
|