|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . l8 _# U* l; t( Y, ~5 Y
3 z8 Y! }# `9 X! Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& ]" \; d6 z1 ^ j' Q, l6 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 }$ D4 {' G# m& Mswarm.SignatureNotFoundException: u+ N2 y( |5 Y/ r) _
at swarm.Selector.<init>(Selector.java:76): q, D; d7 x+ E. R4 x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" A* t1 u8 r0 Z+ O3 j" L3 r6 T7 K3 i at ActionGroupDemo.main(ActionGroupDemo.java:67)
) u/ n" `* ~$ m( J: o8 S ~
1 K P& T: ]2 r- a1 g" x% @. v/ o
! s. T/ z: ^% N# i# iimport swarm.objectbase.SwarmImpl;* d/ g; R/ Y! G5 v
import swarm.objectbase.Swarm;$ N9 P; f/ V$ J: m( S
import swarm.activity.ScheduleImpl;4 D# U& R" Q. t! T: g
import swarm.activity.Activity;
3 L4 a' l% b- Z2 C' f$ z7 L# fimport swarm.activity.ActionGroupImpl;
9 N9 @8 p' ]: m8 w5 g* \3 _# b% Q! Iimport swarm.collections.ListImpl;+ r, q* R! K" Q) M* d
import swarm.defobj.Zone;
7 u6 Y& q* z8 |4 @: j |& aimport swarm.Globals;- Z! @* L9 o: [0 W; S
import swarm.Selector;
2 F1 Y. d6 v* W, cimport swarm.activity.ActionGroup;
9 c F( ]5 J5 s1 `8 Kclass Agent {
: U3 e9 i7 ^) e. H# r! M" e1 y* w+ C char id;9 W, ]: n2 a) ^+ ~! i$ A% Y
" J9 P7 T" y6 H2 t Agent(char id) {
0 F, D3 b6 N$ d7 Q0 N; \/ S% | this.id = id;: A. U/ V6 o- g/ k6 R1 h
}
! ]# m3 m5 p% v. i+ ^# Y
) ?5 p: c8 B9 y0 e5 h* x0 g3 N2 C3 n public void agentStep() {
2 G. B$ q7 u" _" V7 M System.out.println(id + ":" + Globals.env.getCurrentTime());& A6 c$ L4 f3 S5 F
}. P6 d i8 i# P
}
, K/ ]+ z7 m, F, `% y* z# E a
2 r$ j' \/ ~5 D! ^$ G5 j# Epublic class ActionGroupDemo extends SwarmImpl {
& ~. L- J8 n }8 }4 ? ScheduleImpl schedule;6 o3 J% a1 ~/ l6 [
ActionGroupImpl actionGroup;
* n/ @7 ~* h" w: m" _ ListImpl list;( d: H% N5 o; {8 M! {7 v! R
char Id = 'a';
- t9 n4 n- R& P% |. {3 Q: _7 e& G6 e8 Q1 I3 {, H, _: G
ActionGroupDemo(Zone aZone) {2 w7 }* Y0 C; V1 ?1 `0 y
super(aZone);
/ b0 M0 k! W' f) z2 y. R1 w) j+ Z0 _5 N list = new ListImpl(aZone);! F2 N# w0 s+ |/ `9 P/ _
swarmSetp();
. W1 q! U% y6 {4 N1 Y% N( N/ d/ w) O actionGroup = new ActionGroupImpl(aZone);! U6 D; y; Q4 u5 k
schedule = new ScheduleImpl(aZone);" C8 k- N' _2 E1 j7 W
try {
! W6 F. G; p& L! P/ z* Q: k Selector agentSel = new Selector(Agent.class, "agentStep", false);$ G. h7 i3 C' U5 v+ }. D+ W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ g( u8 E8 {6 D: Q/ I
7 e# q! w+ C! e actionGroup.createActionForEach$message(list, agentSel);* e* J8 \4 i% y h* y0 S: P: j
actionGroup.createActionTo$message(this, swarmSel);* O5 P- c* r! C- M/ D( x
schedule.at$createAction(0, actionGroup);0 H: T9 C; f$ o, y/ L0 r
schedule.at$createAction(1, actionGroup);! G' [5 l' @* K! l& @; _$ c
schedule.at$createAction(2, actionGroup);2 r: s9 M! ~5 z1 A- |
$ { y, D' J4 C7 }% ?0 m/ l) L
} catch (Exception e) {
! \' L# ?( |# I e.printStackTrace(System.err);
- b. z/ @" }" e$ o9 r/ c //System.out.println(e);
1 S8 e S" X7 }+ M+ v. E9 ]& b' L' N System.exit(1);' z3 k p7 p6 O5 C$ T
}
' W2 @$ z% T" D0 j/ p% p- j! n8 n1 w' L! i+ y
3 K9 k- ^1 M( R8 X+ f6 e
}
7 i/ H5 b' g9 V# z4 B4 p0 W2 z3 y2 O! ]0 n0 d. ` U9 n# ^- k
private void swarmSetp() {/ J) `* E8 l8 e5 Q# M9 t$ |
list.addLast(new Agent(Id));
& t! [: c* K$ q Id++;) P7 b% p0 F9 X: k) Z/ s9 Z( }/ r
}% w# A: }6 Y/ y6 G4 d& W' m8 n
0 v* c& r& w9 f! I/ u5 l4 E6 V2 N( Y public Activity activateIn(Swarm context) {
! m2 x2 G" R$ P# n, ` super.activateIn(context);
/ p: o0 c! s1 m, c& X7 G schedule.activateIn(this);
7 |5 f' V8 z N6 g6 h* K return getActivity();
9 v2 G' N5 w7 ?, t3 ?; ` }
, @, C# x# Y' T `" b e, T* U/ ~1 G4 A4 F& m5 q- y/ e
public static void main(String[] args) {
& L7 [! e" e( V9 \, i' v% T) G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ p' S- j& U% s: C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; |, c1 _1 P* `& O* k, d' t# Q' p
swarms.buildObjects();
0 r5 u, I9 u# W: ^% c swarms.buildActions();
; A' r, {* R7 f$ ]6 h8 w) e; R" j swarms.activateIn(null).run();
: g* g$ ?4 \, n$ {" w+ C! o" J, l, O+ r }9 H: z( F Y7 y3 v4 ~; l7 k$ |
7 v7 s/ ]0 T# p/ L7 H
} |
|