|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / W4 F K: s' z: u7 p- P( o }5 N; n
) {6 y( b8 l. I" \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 F& e. L. b* n# G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: a4 J q6 i2 r ^5 M
swarm.SignatureNotFoundException0 N$ {- C# u! [* T; [7 I
at swarm.Selector.<init>(Selector.java:76)% M8 n+ b& X/ V# J V; s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 z' l L: ]0 e at ActionGroupDemo.main(ActionGroupDemo.java:67)
: @1 A7 ?& ^. ]) X+ p; a4 N* E p( p/ D) I( S' V
3 O* m6 g! a6 U: i: iimport swarm.objectbase.SwarmImpl;
' i9 T4 W E& J+ X$ P5 [import swarm.objectbase.Swarm;( d6 U( G# u# G! `, j
import swarm.activity.ScheduleImpl;- M8 e) `$ W5 _4 d
import swarm.activity.Activity;
" s# O, Y/ z' h( wimport swarm.activity.ActionGroupImpl;$ t/ t1 ?2 N! M$ {$ Z
import swarm.collections.ListImpl;
: `% F) z @( \$ Zimport swarm.defobj.Zone; . M' J: x {0 O! b; Z$ w
import swarm.Globals;- L. |5 o9 O t
import swarm.Selector;. E; n3 k7 [/ m) Q
import swarm.activity.ActionGroup;
1 S, T( E. V3 l/ z! w, ^5 Qclass Agent {7 Y: H2 _2 _% u. {6 H8 L
char id;
; {3 G+ u" E3 v3 a2 H9 L
3 ^0 I+ C" m$ ^9 ~ E+ s, ? Agent(char id) {6 _. O2 D, O5 G& P4 N! {0 ]# ^' A
this.id = id;
2 ^" r1 F' {: o2 z! m) g }+ U) f2 B, t( e1 E: E
+ D; j; O3 D. M% P7 m
public void agentStep() {6 ]9 S7 g& Q+ R8 @9 `
System.out.println(id + ":" + Globals.env.getCurrentTime());" ^" E n0 m! [4 O9 C7 F& j# A
}
6 M; n4 K1 Y" S: d}
+ x" F8 o, ?7 i* p5 E
8 b( T3 G: G8 u7 C5 q) bpublic class ActionGroupDemo extends SwarmImpl {! n2 h5 T; [& O# S
ScheduleImpl schedule;
+ B f" z9 E$ T$ f$ U ActionGroupImpl actionGroup;6 `0 ^8 X9 a4 @* W
ListImpl list;! I j3 C N! C! s
char Id = 'a';
. k J6 Z, y) g
3 ?' J7 V2 n. ?4 }. N5 D ActionGroupDemo(Zone aZone) {# Y, h, B6 w, c" N0 ]
super(aZone);
- I% H8 M3 n9 Z8 ?- N list = new ListImpl(aZone);
1 i7 K5 Z6 t' _& B1 p: S% f swarmSetp();0 q. E. C( R; y( j
actionGroup = new ActionGroupImpl(aZone);
( D8 |& Z( q# B/ e schedule = new ScheduleImpl(aZone);
1 d9 k5 B. e+ a+ t' X try {
- z5 s2 [# V2 i# Z0 _: i+ k Selector agentSel = new Selector(Agent.class, "agentStep", false);
: s) v* @- g7 G* K Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 o- x9 j1 x3 Z5 g: U( d% W ' G6 r/ o, ]/ F9 V- g9 ~0 F, I
actionGroup.createActionForEach$message(list, agentSel);9 j3 A" R$ r/ I: X. z
actionGroup.createActionTo$message(this, swarmSel);; }! U- K. u- O, X, T
schedule.at$createAction(0, actionGroup);
, |, f! ?7 A7 S+ V8 ]0 E/ A% }. q schedule.at$createAction(1, actionGroup);
' U% i* w# E j+ n schedule.at$createAction(2, actionGroup);
, h$ s0 p+ ^" I7 ^
1 g0 V; u' B3 w+ q } catch (Exception e) {
7 m# s: p) B; ^# _8 _ e.printStackTrace(System.err);/ a9 V* T2 ?, {
//System.out.println(e);
. K5 O' w! A7 y) ? System.exit(1);
% F: U _* G4 p+ j& y- M* z }
8 k) O& A8 h! U: w" [$ V8 l
; z4 x1 U/ f1 n! R
& b+ S m0 F$ w# f }/ |8 p) ]4 d8 \, n2 _& R0 S
; ?1 d; `! O0 @, f! H) M N% r
private void swarmSetp() {* ^9 g: J0 l `+ u
list.addLast(new Agent(Id));
/ ?5 ]4 `3 V/ i. f Id++;+ ]& z' y' o7 m* C3 @* F
}1 Z% F9 m+ v \7 j+ G% J( r
, k. W( V2 t3 m/ Q X) G3 s public Activity activateIn(Swarm context) {1 l7 E& O: L3 d0 ?; Q' u; y
super.activateIn(context);
+ ], U/ {5 i9 [8 d; @7 _; \ schedule.activateIn(this);
$ Q9 U1 Q( w( v) n# O8 l" Q) { return getActivity();
5 J2 b6 }* H9 Q+ D0 p! U }( I6 B& ^/ A+ W$ Y0 |! S
1 t* p+ w: d5 T% N( h2 i
public static void main(String[] args) {
' n+ H! ]1 I' d Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% N5 c7 [3 n% X! U. \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! }7 e! V: U1 {1 P
swarms.buildObjects();) P/ L) x0 O$ b4 o
swarms.buildActions();
* C( r k* l; ]) c swarms.activateIn(null).run();# O0 z! R) r t; v! f
}% m9 V& \/ _/ A
g! Z- \# t4 V& } k' l7 v} |
|