|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 E- z p! h y
. [9 x9 \4 W! U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
l, ~( \# l0 e' V7 U: C3 A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) E2 y: G( m' |3 C0 V+ nswarm.SignatureNotFoundException) w6 @. |8 \, x! p8 d# \/ n& Z
at swarm.Selector.<init>(Selector.java:76)
& P0 w: q3 z; U" k at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 ?8 g+ Z9 w f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ m- J- o3 N2 u0 d4 ~$ s0 ^5 l/ J: R. x% _
7 ^+ j/ j1 N) N5 p- k. {0 R0 R6 Jimport swarm.objectbase.SwarmImpl;
4 p# u5 ]' s0 g' E. {import swarm.objectbase.Swarm;; T% N c$ ]3 t+ h
import swarm.activity.ScheduleImpl;& k& b3 m/ |+ o
import swarm.activity.Activity;5 ]. Q% V6 v- D8 ]% ~
import swarm.activity.ActionGroupImpl;
8 D: D4 F, U# }6 n9 Z( C! X/ [import swarm.collections.ListImpl;
6 v; {6 r5 E* ?$ ]: p# M G4 Iimport swarm.defobj.Zone;
# ^3 K, H) _9 U( w7 Iimport swarm.Globals;
; c8 Z, Q1 Q! O9 k) @" Iimport swarm.Selector;1 l& t0 i# J! Q' e U
import swarm.activity.ActionGroup; 9 w6 `* n, i# m9 j) n$ a: E$ n
class Agent {
% M& q8 [$ {8 ?" B/ u, _. w char id;
% U" H: G g5 A/ |4 H+ n3 f) B
# f, k; _" p) `0 @* e7 c Agent(char id) {
' m; Y' t# l8 G this.id = id;8 e5 ^% A3 z" t2 B7 R# g# ?, o8 r3 Z4 F
}
: }$ E, D0 J& p2 ?
; b0 x# N3 H6 G+ \# K% D4 | public void agentStep() {1 v# o8 A! N" ^% Z; k1 Q
System.out.println(id + ":" + Globals.env.getCurrentTime());( v- U+ D' `2 a R. |0 h7 F
}
2 ]0 V2 P6 M! @/ V: c}' @4 b3 M0 ]& g, l8 q f
- q: t- J+ a+ t
public class ActionGroupDemo extends SwarmImpl {
# L* I i ^5 i( \* G! c3 D ScheduleImpl schedule;, \9 B9 W* |- y V# ^9 v
ActionGroupImpl actionGroup;
6 S, l Y: C6 }) z+ w u% O ListImpl list;5 d7 N- w) v, W; L i6 R
char Id = 'a';
: [$ n* o, H4 y+ B! s r. w. u# y& V+ p5 o3 c
ActionGroupDemo(Zone aZone) {; F' Z8 S. ~+ a# N4 m0 I' _
super(aZone);; a5 y' t+ s" d3 k& w
list = new ListImpl(aZone);
4 z! k" [& h3 l0 k3 l swarmSetp();( _7 E) m' \' @
actionGroup = new ActionGroupImpl(aZone);* t0 p/ i# ^. G0 C/ J
schedule = new ScheduleImpl(aZone);$ e9 o7 @. Y9 [ n& d: C( f
try {- h7 m& Z( Z( B+ E0 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ i$ V2 Q# A1 ]) K5 A$ i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 t3 u% W$ `$ M9 E; [4 Z$ y& f: E7 p
5 L: ~. s1 R8 O* Y+ q" A, ^" r actionGroup.createActionForEach$message(list, agentSel);* J4 l! M( J, V& K8 d
actionGroup.createActionTo$message(this, swarmSel);0 ^0 M5 T* H# i @# M7 G
schedule.at$createAction(0, actionGroup);
8 A% t" I# k. S( l schedule.at$createAction(1, actionGroup);+ a0 v- P7 }. p+ X Z
schedule.at$createAction(2, actionGroup);' l7 N. F! V4 K
+ B+ J, ~6 B }+ Y( G: i
} catch (Exception e) {
( u1 u% g. N8 _5 B1 C* o! Q e.printStackTrace(System.err);$ a; C# ]. ?+ R9 ^# }" Z" ?
//System.out.println(e);
9 r3 K8 b: o1 S System.exit(1);) i0 _+ N- i8 I# `' f$ B, b" k
}2 G% R- Y) C; m6 C
" R) Z- Q9 Q; r+ h4 L
- ]# w" v3 t" Y3 [ }
$ G. j* y$ q: j$ \# ~
; K4 K7 h& `+ B* G$ V9 ^% Z. R( F private void swarmSetp() {
9 x% ]* Q" ]2 F& C& _6 x, X6 ~) | list.addLast(new Agent(Id));1 b5 m1 t. f `; J" u6 K
Id++;
# r8 E. o |! V' a9 D# Z }
9 s: r z3 a5 q/ g! k4 ^
" ]. W: e4 C% A* i public Activity activateIn(Swarm context) {: ]% e p! T. y1 K- A! A' p
super.activateIn(context);
# B9 c" }1 Z& ~" E* J& {8 q schedule.activateIn(this);
3 d. ? W! t$ i J; B- f return getActivity();
& n& y, \4 v) ?" D; Y }
6 \% O1 Q- Q# B" z' N/ ^( \' a7 w m" O/ s2 k. R) |
public static void main(String[] args) {! z& M2 \) @$ `9 k8 S4 Y4 I! w! \
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) d$ o* B2 `, U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. l: R1 S4 j8 P. \
swarms.buildObjects();2 J& s9 L7 G% r: _- s. t
swarms.buildActions();$ Z1 p5 p- i; { O$ W' ~* z, T A/ \7 t
swarms.activateIn(null).run();: _7 e: w9 {+ X3 |
}
$ Y: w# A. C! r, `0 u; I$ m' m; u# N5 A7 G
} |
|