|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 M: J3 c" Q1 l( k) t4 l5 ?- P& B" r7 C! R7 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 Q% h& L Y# I% | o( I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! G$ k: z6 B% C, y/ `swarm.SignatureNotFoundException8 |7 N* ]: A5 @3 t
at swarm.Selector.<init>(Selector.java:76)
( k$ t# y N8 ?+ B$ G9 W# K: t at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* u7 z- W1 M" w+ X" K. q4 J0 X at ActionGroupDemo.main(ActionGroupDemo.java:67)0 F( `! t |! ^* Q9 h* R
9 _4 ~' m4 q6 G3 U; a0 e+ T, e2 G( ~: Q0 o0 e9 ?$ p
import swarm.objectbase.SwarmImpl;
( Z8 ] l) r; I4 e; k9 S0 ~3 Simport swarm.objectbase.Swarm;
, w6 R0 C# H$ |6 G' `: [import swarm.activity.ScheduleImpl;7 g% F7 h+ z ]5 M9 R/ `- V8 d
import swarm.activity.Activity;
* N$ C: Y* M9 z- H$ Oimport swarm.activity.ActionGroupImpl;
$ f4 r( o$ T% F5 |2 Fimport swarm.collections.ListImpl;" N9 U& k# s+ |. v! v- Y
import swarm.defobj.Zone; g' k2 |! z( `3 I
import swarm.Globals;. \! F1 B7 |- e& n1 j
import swarm.Selector;& T5 P- i3 E" F; m6 h3 @% y) D& l
import swarm.activity.ActionGroup; 1 x; P: n' H- E3 V- F8 @$ _ @
class Agent {. ~9 E" w* V' S6 b. ]& T* @9 w
char id;
& W% j! `6 C: [- w, A2 u, H% y' B
3 X. r3 p) C* ~2 i4 U0 d5 k Agent(char id) {
! v9 _1 e) R# [4 j d3 ?! H this.id = id;, b$ t* m* T2 W+ M0 I8 H1 ]7 L a, E
}
. v6 @7 y- V- g5 {! B
/ b# I4 H& }8 Z public void agentStep() {
* K9 V; }% Y2 o4 k5 W2 _: ]8 U7 p7 ~ System.out.println(id + ":" + Globals.env.getCurrentTime());
- u" N' \+ m7 ]5 m) U$ E }! R9 v, f# @: H
}, `1 H! T, Q; [# C8 b7 N' W
# E n. V( _! t2 f" [* @public class ActionGroupDemo extends SwarmImpl {
2 H* y& `4 w+ Z! a' {4 h5 m ScheduleImpl schedule;9 d2 p: [# v! _, s! e4 \/ T
ActionGroupImpl actionGroup;# G. T7 Y9 f9 l" b) `
ListImpl list;
& C" L3 p7 e6 t5 g, ?/ r) ^2 G' a( e char Id = 'a';
! @/ n) `6 q" C: b& h3 z- U6 k
! ?( ^7 l7 F; m$ [2 i) b ActionGroupDemo(Zone aZone) {& f) y1 m2 w5 G6 R0 f% F& m
super(aZone);- P, P4 q2 s6 G6 H& C/ `3 @) X
list = new ListImpl(aZone);2 R4 C9 v" u! T3 f6 a
swarmSetp();$ @: v6 ~7 H4 {
actionGroup = new ActionGroupImpl(aZone);( w, Z+ z; Z0 O6 {) H+ o3 B# s8 A
schedule = new ScheduleImpl(aZone);
( [ a( f$ O2 A' k try {
( h8 q c6 W$ q+ z! w Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 I- G! r3 Y8 y- h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* V" }, l5 {8 b- T
( F2 K9 B$ E7 r& s( Z actionGroup.createActionForEach$message(list, agentSel);# d$ l* H0 F0 T. J; ]9 `3 H8 u
actionGroup.createActionTo$message(this, swarmSel);
, m0 N& P' O8 y: A; _2 x schedule.at$createAction(0, actionGroup);2 a/ }; B7 `* B! o6 [9 O
schedule.at$createAction(1, actionGroup);; P8 ^! t0 E* O4 v9 h, `) Y
schedule.at$createAction(2, actionGroup);
9 V6 e$ a# v. _, e: M% a# L& D" s( @# S& t V
} catch (Exception e) {$ e. I' u. H: \( r+ T0 k
e.printStackTrace(System.err);$ G! o9 Z9 N8 t+ l
//System.out.println(e);; |: f8 A S/ X! [+ {- p
System.exit(1);2 |2 s2 `: p( {. P, P
}5 X, G* h4 x6 t2 @, t- C2 z
0 n# e% I _0 p! O6 l5 g% b" Y2 B9 v
}
' }# o& M3 r, t i- K+ k# m! j
4 n/ X; y1 u2 X) a, C& G, d* o private void swarmSetp() {
6 ?) z, u; w" l( A- t# |, S) |' U list.addLast(new Agent(Id));
$ C9 b H3 ?* v: ^" h Id++;
+ R8 X! i' O" Q }
1 L: K2 g W( P$ p _. L$ z5 F2 k1 d: ~+ `4 U% s
public Activity activateIn(Swarm context) {: v6 |) B3 J* n: A, W1 ?$ }3 B
super.activateIn(context);' r' |2 ]* F. G; b
schedule.activateIn(this);
6 t' I( Q3 z+ J9 Y; e& Z* t+ Y+ M3 M return getActivity();5 S" s0 J- k9 O8 a. J0 G
}
! O" l$ r9 H2 b3 W A7 k
% `8 J Q5 A0 Q& y- e) ? public static void main(String[] args) {
# q, f [2 n7 [% N4 G" }2 t6 Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- W; T2 ?) f, p8 k. B. K( G5 n Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 n$ P/ s$ q) w swarms.buildObjects();
+ S/ W! j" O' s" s/ x& Y swarms.buildActions();! L8 o, a- p1 z' s$ m0 |: s1 D
swarms.activateIn(null).run();
9 V0 e$ `( b4 v4 M+ X }
9 ]! D3 w c( P! L2 q' H. J( O/ ?2 P& Z) J
} |
|