|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 n9 {4 v7 c1 g* i% D
# [0 C. Y& `9 Q4 F0 X, A8 z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% E" @% d# c! k/ {+ R/ b' x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 ^5 Y. w# s4 \, P8 u* n
swarm.SignatureNotFoundException9 r6 L0 c; E- f! u
at swarm.Selector.<init>(Selector.java:76)
1 v* |. ^! ^2 o+ [( J% {( k at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) \$ j( m5 d8 l+ D7 \6 Q+ a at ActionGroupDemo.main(ActionGroupDemo.java:67), C3 Z( g7 w: V( Q; j1 g' L A0 C
, x3 C; I/ m2 J- h
& o( O0 ]* U$ u' l; s) U Mimport swarm.objectbase.SwarmImpl;
8 m5 b8 l5 F/ ~% ~8 Oimport swarm.objectbase.Swarm;
$ [% Y: V8 F7 k/ h/ z4 b# uimport swarm.activity.ScheduleImpl;
9 M' e5 M! f; @import swarm.activity.Activity;
5 n1 H9 X" C5 ~2 Z0 Simport swarm.activity.ActionGroupImpl;! `0 K; R" _2 E0 b
import swarm.collections.ListImpl;
# k: K+ d$ F; E, \4 \: A5 Simport swarm.defobj.Zone; 0 q: p7 M+ x% h
import swarm.Globals;9 s2 z C" I0 Z. Y7 s
import swarm.Selector;
4 L% A2 J; T% B) }. V1 _0 L# aimport swarm.activity.ActionGroup;
# G7 V% c( `# B( v8 Z# n8 A0 ?class Agent {
9 u7 p4 L ^ u# L: | char id;
2 e) r9 n* n* F2 |8 c9 d# K0 \$ K; g; z+ J) a4 ~ E
Agent(char id) {6 N0 k) ~- N& x& _ f1 N) }
this.id = id;/ z0 F' R' l- o$ K! [8 E& Y
}' I* G) t8 @( ~5 Q5 c
" P& ~+ G9 ]; v1 L/ d8 ~# f6 ?, x* T+ ^
public void agentStep() {5 w% h1 V: v* c6 C9 a! o1 q. c, a1 i
System.out.println(id + ":" + Globals.env.getCurrentTime());0 p4 h& l4 ?3 b' u
}$ `+ Z h2 G$ y5 F) h K+ p* _
}0 q" U3 x3 F. }- g6 h0 m3 W
9 @% a1 l/ n; V; l2 _$ v" `public class ActionGroupDemo extends SwarmImpl {1 K/ ?/ g4 L, B; H8 Q6 G& L; I8 ]$ o* A
ScheduleImpl schedule;8 q; @( S" |2 P0 n5 w- T" I
ActionGroupImpl actionGroup;
- ~* C! ]) j2 A4 ~ ListImpl list;# ], u1 L1 c, T* w A( l" P3 C
char Id = 'a';
! C; p2 [1 J. \( F) V8 C+ ^' r8 F. @4 g* M
ActionGroupDemo(Zone aZone) {
0 C/ u$ s8 U' `3 f5 v) N+ A super(aZone);% V1 P; J+ F& e$ [# E; v
list = new ListImpl(aZone);
: c# D! y$ b- |+ u( D- V swarmSetp();+ o$ P9 Q: Q# Y
actionGroup = new ActionGroupImpl(aZone);
& M4 k" e' g/ t3 p schedule = new ScheduleImpl(aZone);, |6 M% @5 x; K- v
try {
8 N3 `5 s& y" }- ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);9 V" E( ^- V8 M" ^7 g5 N$ C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ [& e, n8 e* m : H Y# T' p* L- z
actionGroup.createActionForEach$message(list, agentSel);* k: @8 g8 ]! G% w: ]9 ?. M
actionGroup.createActionTo$message(this, swarmSel);
$ m F6 {) q( E+ v; \8 b schedule.at$createAction(0, actionGroup);. ?* A S% G# c1 N8 H
schedule.at$createAction(1, actionGroup);% B; v" m# U3 j, ]
schedule.at$createAction(2, actionGroup);
7 a3 Y: M9 |8 c5 s9 B! I# [7 ^5 c) }; ?
} catch (Exception e) {- k" t9 p: c! |# K- h r4 U
e.printStackTrace(System.err);3 y. V! b% Y$ V" M+ t
//System.out.println(e);
8 s% B5 Y; p, b2 R6 S6 M9 H System.exit(1);
' U6 t: z; K; x" i) N }
/ ~$ [' K/ b K" T9 Q
: u2 o, k) J0 y/ n- y) r ^9 o
1 m. s0 m: F0 s% @+ ^/ Q; k# l }
/ `7 }0 \8 A8 M, j$ l
2 o7 S8 R" O9 M$ |$ x3 e private void swarmSetp() {
+ e1 f% f2 L3 x+ Z( | list.addLast(new Agent(Id));
+ o }! [# a+ o% k1 t }1 g Id++;' f5 I1 s% V, f$ \# }
}
, w& x5 d/ T z: @6 F* X) W) B" Z
6 Q) a# P3 }; A public Activity activateIn(Swarm context) {' V" a% E1 c5 u8 Z' ~
super.activateIn(context);
: T6 F; O1 N* T; z1 |! y8 i2 M" F- J4 g schedule.activateIn(this);$ S4 ]( R9 p3 |+ c/ f
return getActivity();2 N1 D( d! r+ I7 g3 p3 {
}$ D" q8 N% w! ?! Z
* B* m1 S1 ?& D- x% d, F7 j public static void main(String[] args) {
V! T3 \3 C; N# N3 y- p% Y" x* } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 p' Z. N3 |/ t! X
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 E9 O" K) n; S; C
swarms.buildObjects();
8 l1 g1 g7 g$ c4 x G9 L! H5 | swarms.buildActions();
: v: |# Y+ C' E0 [& v2 `7 _ swarms.activateIn(null).run();
: _2 L% n9 W' U% ]& |- v }: y& H# O- Y- P% ~; a+ Y# J
3 N. E9 W+ [) \& `4 M} |
|