|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % A: e! y8 ]# ^4 ?5 b
) M/ t7 E* h/ f. O' b1 N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' R Q3 ^# B, r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: X5 R( W5 |0 z3 [swarm.SignatureNotFoundException
& z$ N8 y- o7 f; O at swarm.Selector.<init>(Selector.java:76)
0 W- o7 q) C F% W$ y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ C- f1 \; J2 h1 K; g& L# B/ [, g at ActionGroupDemo.main(ActionGroupDemo.java:67)1 A( l& V( P8 T: @4 M
E6 O, K: F7 }8 e) \
7 _0 }% ] v4 v) n# g; m' h) c6 Himport swarm.objectbase.SwarmImpl;; w" G0 X& t0 M: K+ s9 R
import swarm.objectbase.Swarm;9 }. X; ]; g4 o- l
import swarm.activity.ScheduleImpl;
( H3 A4 X( a3 }5 vimport swarm.activity.Activity;, X: q% B& ?* ?: s
import swarm.activity.ActionGroupImpl;
- _# }6 g1 R9 a0 l1 Pimport swarm.collections.ListImpl;
' k; b) I( C! H" w! d$ dimport swarm.defobj.Zone; 4 v3 W! f( W7 {3 g
import swarm.Globals;1 b( y9 I- K& E# V$ w% g/ U5 @
import swarm.Selector;3 U- m$ b7 I4 t4 L5 @. S
import swarm.activity.ActionGroup; 1 a) }+ F7 C) o; \5 P+ E
class Agent {
2 k5 D2 E+ u% c# D' X B1 x char id;
" T# q# D1 U! Z0 R' M3 \
( {( z: ?( P! S( g Agent(char id) {8 F1 P9 S% s, A
this.id = id;: i9 L* A* R( y( u0 A# h6 D
}
2 D) I0 D; o5 {# d* D8 m8 n3 Y( p1 j Q
public void agentStep() {+ u" M" b& \$ K% i6 c& S8 v
System.out.println(id + ":" + Globals.env.getCurrentTime());- Z: W" |) T. V$ }' J
}
7 ?6 _0 k) f& x& i' }0 ~+ f2 I}
+ {* p8 G; _- i, l) v v0 }0 r
2 K1 @$ ^% Z% D; Fpublic class ActionGroupDemo extends SwarmImpl {# g8 P( B# J. G' k0 ]1 b
ScheduleImpl schedule;
- ]" \: O( C, u U' O* @ ActionGroupImpl actionGroup;
* h* T+ V! ~7 L ListImpl list;
- A. \7 ~' N2 p char Id = 'a';
6 c; K0 O9 Z6 P& N) H% \8 t$ q5 ]3 h& Z% P: }' }. ]
ActionGroupDemo(Zone aZone) {3 `% v4 l p( n* P7 s
super(aZone);1 x* n: q6 h6 w3 i+ |: W: P
list = new ListImpl(aZone);
- D V% _5 `+ x$ v6 H# F: d swarmSetp();
7 z7 b8 f+ V/ J! g N actionGroup = new ActionGroupImpl(aZone);9 V3 v- `6 `7 I+ K
schedule = new ScheduleImpl(aZone);
: q+ @ c3 J. H* L& f/ {+ E try {
5 }5 z% W$ }! Y0 a! N7 @ Selector agentSel = new Selector(Agent.class, "agentStep", false);
" d8 r7 u- [$ c* A5 C ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' j7 Z1 T: q+ e5 ]
" o* Z! v) \* l0 A7 A% u actionGroup.createActionForEach$message(list, agentSel);* n* o/ b6 r, k# y
actionGroup.createActionTo$message(this, swarmSel);
/ [, S- H0 j/ c+ f! m3 c8 E% p schedule.at$createAction(0, actionGroup);0 E% [7 n' T5 P5 S
schedule.at$createAction(1, actionGroup);- R: i8 g7 n! h3 _0 r
schedule.at$createAction(2, actionGroup);
: U) Z3 @9 E# F$ O0 z- Y I8 {9 z" x! t- Y* h4 A! @
} catch (Exception e) { q* e, R& e# u: Q9 V3 S% h
e.printStackTrace(System.err);8 u. \+ \: L* w
//System.out.println(e);2 `' x" P( X& s7 ?: j
System.exit(1);
& T" s: v0 M# s7 q0 K4 v; d }' F& g! z/ m7 b) f, V7 ^$ C4 I
) Z( [! |$ V4 t( z0 [% S* E0 ~& t" H6 G3 b- P% K
}
- X3 |' }$ v X f3 X# h6 G" l7 |$ E7 d: V% h$ R5 u+ J
private void swarmSetp() {# V7 x: t1 c2 A6 ]% }5 ^
list.addLast(new Agent(Id));" Q- d; G3 R# Q& O4 v p$ [
Id++;+ y, ]' K/ K. B: J+ Q& s$ l( K
}$ l, r9 b G" w! O* e" z
3 o7 Z5 o z! l9 J$ m public Activity activateIn(Swarm context) {
# h( `0 e# Z0 U' T, P super.activateIn(context);
5 U H4 ^/ W7 D' M! o+ ?/ c- Q schedule.activateIn(this);" r" z1 R, M* n( p
return getActivity();
# ]: f# Y# N" C( h" h/ i) r/ i } m3 Z' e1 Y- r8 h* `4 }$ c3 a' b
3 L! ~: }5 J) d. [) x3 _
public static void main(String[] args) {
% `. V2 G8 s1 [9 ~5 y* ?, A, m Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 p) o1 U- {* }2 {; m) g
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
C% `6 R8 [. Y9 f' o. l swarms.buildObjects();- [4 I. P, E6 d8 _# g! M3 Z( M
swarms.buildActions();/ Y. w7 F6 A3 O( }2 S) u- N
swarms.activateIn(null).run();
* ?' _$ L u' P1 i% t2 @. L1 b }* A% V% }% j8 u7 O
' k+ ?" `: [* B# B1 \} |
|