|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 d; k8 ]( W P4 R
0 E' ?& D+ {5 V$ B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# M" g7 E/ O- r* W( X. C5 L/ u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% {0 X% i0 F2 I+ O/ q- O# jswarm.SignatureNotFoundException/ n- m$ o& [) ?0 p& p) {; P& G2 m
at swarm.Selector.<init>(Selector.java:76)% b: S* K5 j0 f0 U+ h7 @0 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& d i+ f) M# J5 V; ]
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. P4 }0 A# h6 m, T
& m) H& f. q/ W( {* z4 p
' T1 Z- |" K/ d" G* ^import swarm.objectbase.SwarmImpl;, g! u4 K+ G) a; a5 x
import swarm.objectbase.Swarm;( E3 i# M$ N* r& ?: P
import swarm.activity.ScheduleImpl;
6 ^& s0 f; S* e' ~. I2 ^$ pimport swarm.activity.Activity;
9 G `+ K: C. r* w6 b0 T0 F: Nimport swarm.activity.ActionGroupImpl;
% n+ V r8 ^3 G! |8 v3 rimport swarm.collections.ListImpl;
4 h, \% y' r( o! a3 _4 r8 r5 Gimport swarm.defobj.Zone;
' b4 |4 A( j; l; {- Wimport swarm.Globals;
% u5 z" E: q9 rimport swarm.Selector;; g6 t& K& M4 u+ k2 t9 K6 Y
import swarm.activity.ActionGroup; % j1 |9 a6 K" H4 m
class Agent { p e& a( {- Y/ A1 N
char id;
4 g. l L+ x6 r& N; L& v5 c0 n
5 r$ g: O+ B3 e6 T- K Agent(char id) {
6 `) h/ ~0 b6 f# p7 Z this.id = id;- |# m; C2 v# d' c/ S+ i' P
}' ?2 ~4 J& B& `1 Y1 J% K/ [3 k# t) v
R" Y2 D; k* Z2 A& T public void agentStep() {/ w. Q- y/ _5 ?/ O0 s5 w
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 L- I, a) f6 q3 P& K9 j }" x) x5 ~: Z) z5 C
}
' M7 p9 r- Z/ X k+ v" e+ l- D0 Q) G$ |& F9 v
public class ActionGroupDemo extends SwarmImpl {7 q. {4 c+ t. c, U) h) y% _6 \5 C
ScheduleImpl schedule;
$ E! x# x: F5 c% a% `% F ActionGroupImpl actionGroup;
3 }. L1 @( ~* n, Q: H ListImpl list;: J2 N' G: y4 m* A6 P6 [* m
char Id = 'a';4 j9 s$ T# ^: g6 X# o+ u; H
- s; w5 G5 _5 @. j' S k/ w, p* ? ActionGroupDemo(Zone aZone) {
) V. h9 k/ b4 x* m" l5 C super(aZone);- h% K& b- S4 T4 M* F3 m+ ^$ n
list = new ListImpl(aZone);4 v+ G0 W* _! y- V- c/ e4 t, x& y7 c
swarmSetp();
3 W' J6 [9 C" d9 H$ f6 t' e+ F: a actionGroup = new ActionGroupImpl(aZone);+ y1 c# D( Y0 ?/ C+ T! \
schedule = new ScheduleImpl(aZone);
& W; X: ^9 Y: c5 V9 \% s try {
8 P- C( M: s7 V: p Selector agentSel = new Selector(Agent.class, "agentStep", false);+ E" ]# I+ E% I+ R! s, M$ ?* c/ a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- |6 K2 A+ p; W* u0 \6 }3 E
1 l" j% r$ [. R. H# x$ p r actionGroup.createActionForEach$message(list, agentSel);
E# Z! O1 v9 S0 W P. o actionGroup.createActionTo$message(this, swarmSel);
, c5 {6 `6 ?/ P' e' z schedule.at$createAction(0, actionGroup);5 E- j- u4 f& {. W( p Z
schedule.at$createAction(1, actionGroup);
% a( d( b: {2 y3 |& s1 j W1 p0 ]: W schedule.at$createAction(2, actionGroup);
6 X- N; I* I6 r$ U& T, o
, M% y) }9 V/ ]; o! }. ^ } catch (Exception e) {
8 V I% H* K. n% K e.printStackTrace(System.err);
N3 l3 b, p6 F9 m5 g4 S2 j //System.out.println(e);1 Z7 I0 z* g4 _8 W4 I2 i
System.exit(1);
( Y4 Y3 g% g9 m3 U" P! ^% f1 s }, J8 U4 `3 H4 U- c1 @7 m3 l
1 h0 y$ d) L& Y6 @2 j
7 I/ \2 l" E$ }$ ?1 C- C6 w. }1 Y }
; U4 q; Z# i9 ?1 `8 _2 z1 D. o2 P7 K( |2 ~; v8 J
private void swarmSetp() {
- b1 t9 W8 _7 E3 W# I |. [ @ list.addLast(new Agent(Id));
( R: N( v& m; x/ R" | Id++;
9 v% ~: F. Q1 e$ i' e }
& [5 n( z' r* }+ U v+ J1 F, \2 z2 Q3 O# W
public Activity activateIn(Swarm context) {
; ~2 ?( |* Q# B2 J3 I# |" S5 q P4 x super.activateIn(context);3 v" G3 W# o$ I4 P! `
schedule.activateIn(this);9 A5 v1 G- M5 n8 ~, q
return getActivity();% l+ n7 _# F. H: `; R
}: D2 e! r7 c' s |- Z: c
$ x5 I+ u; z9 }% E
public static void main(String[] args) {
+ i0 D, h, g% u. v3 c% X( i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& y- i- k0 ]% I/ _+ @. C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' N9 i `) c+ P% _' I( p swarms.buildObjects();
. J- E/ F' g7 f4 p( H6 p% O swarms.buildActions();
$ C4 Q) b; d1 E q3 H) N% O) ]* { swarms.activateIn(null).run();/ I1 x U V( T* T4 ]
}
/ z" v" |% K8 q% r: G
, m. Q& f$ {$ ^' ~4 S$ F7 j1 p$ p} |
|