|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : l2 ?, Q& C" k7 X- z3 s. H9 v
8 S1 A7 r a$ b4 N# M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# Q3 |" n! [( x c5 F2 G% g0 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., l/ q$ g) \* ^* a$ e& b* L( B
swarm.SignatureNotFoundException
! p2 S" U" k; F& ` at swarm.Selector.<init>(Selector.java:76)- z5 j# X+ P9 K4 C# b
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) Y9 R/ j- z- t$ M: ~6 n. ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
{# |6 }0 q# {- i7 G) | q5 P& K* s9 d& F
$ v. g9 @# Q C# k0 zimport swarm.objectbase.SwarmImpl;* ^5 h8 Q' {0 ]! l+ Z2 l% i
import swarm.objectbase.Swarm;
% ~5 t7 ]& R5 O$ Y0 E0 p+ T; Yimport swarm.activity.ScheduleImpl;) r( Y# [0 ?, T P3 \
import swarm.activity.Activity;$ [; A2 p$ |( T# ~0 g
import swarm.activity.ActionGroupImpl;. t: Z& X) ^# M# Q
import swarm.collections.ListImpl;" B7 l# W+ u2 h8 B( \; z9 s4 O
import swarm.defobj.Zone;
' k1 V0 V+ n4 p9 L; u3 J' nimport swarm.Globals;8 D1 }. h4 y3 L9 c" G
import swarm.Selector;, @; }& a. k+ P$ ~
import swarm.activity.ActionGroup;
) ^2 K8 g# _: w- s' ^7 _% gclass Agent {
8 m* }5 ?4 O, a, U+ h char id;4 k5 S+ D2 `1 {8 O( s2 n
3 O8 Z; w4 q% D9 y
Agent(char id) { e# @/ n, E9 j7 \
this.id = id;
3 c4 h/ E; Y Y6 Z5 ? }; O9 M9 [& j0 D7 R) _
# q& v( ]& \8 Q: _9 W' i+ I
public void agentStep() {, {3 i# e! z9 {/ V
System.out.println(id + ":" + Globals.env.getCurrentTime());. g# A$ [! w$ l" h; n
}
, B& c( L& o! r) P5 p}
Q& C. i3 j! M. h" @$ \2 ^
' a9 @2 M& \) J6 d7 kpublic class ActionGroupDemo extends SwarmImpl {6 K" J. m( u# J S
ScheduleImpl schedule;
: J- U) X2 f0 M7 ?* _* o ActionGroupImpl actionGroup;7 j! D, i/ S/ E3 ?* K u; B/ Q
ListImpl list;; E+ x. W; P5 ^8 ? r7 R
char Id = 'a'; L4 @6 ? @4 ^' B, f1 v$ l" M
1 M3 A- w# B6 Q3 y! t( w5 M7 [
ActionGroupDemo(Zone aZone) {, s1 V* R- e8 U4 X/ w. K% j
super(aZone);
4 {9 q# @/ l4 a& G list = new ListImpl(aZone);
+ {2 u; k d5 X+ Q swarmSetp();4 v ~( |! c! T0 \$ z5 @' T( E
actionGroup = new ActionGroupImpl(aZone);
6 [# } L% [6 K; M8 A$ [ schedule = new ScheduleImpl(aZone);
4 e8 Y1 V, e, u. [" {6 \% u* c try {
" a( v# ]2 v* q6 W, x Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ ?7 |" B3 ]0 z/ ]$ e# X1 ]! I Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ ?8 n5 V' f" j+ T8 J' n4 A o
7 s3 K% u( d2 \+ D% ^( L actionGroup.createActionForEach$message(list, agentSel);& o* V3 K7 |4 Z5 z8 L9 D: c( p
actionGroup.createActionTo$message(this, swarmSel); C4 x8 b+ x. d$ I) j
schedule.at$createAction(0, actionGroup);
% M5 w6 H" O& ~. k schedule.at$createAction(1, actionGroup);! a P1 z* r) |- j5 d
schedule.at$createAction(2, actionGroup);) H# u8 h, H7 G9 z. R- z3 z% b
0 m ~/ v0 |1 i6 K2 A. b } catch (Exception e) {
! `* J c5 X5 r' a$ `9 X, L e.printStackTrace(System.err);' V' I; d3 `$ G, T5 v: v( J) m
//System.out.println(e);! p3 n* f; g% N7 t, r. a' e# p
System.exit(1);
' |& ~ v# K; i }
# E& K& @* h. f. z1 w6 ?; q5 Y! F+ g. T% v4 c3 K
& l, R2 {7 n* u" `
}
`. {2 p7 [& Z2 D" [
/ p4 m2 N8 f% n5 P# l& K- o private void swarmSetp() {
! \, G% T" h4 s& l% M8 V list.addLast(new Agent(Id));% t# | C' D& x6 |' ^, A
Id++;
/ W4 G. q! _! d" b/ a9 C }
1 {) _# h; @, R& p3 X" t* N6 V
public Activity activateIn(Swarm context) {4 L: E( f3 W9 y4 G2 D, A
super.activateIn(context);( r% V3 L3 X* o7 v
schedule.activateIn(this);
" Z# z6 L" g( o7 B0 ]) ~9 w return getActivity();
: e1 b5 s, r1 ^* s( b }
: l$ R' M0 G5 T* ^( t, I
' U9 l3 B9 m) v# A public static void main(String[] args) {% b" S4 [ ~4 i# g* u! ?# \. H; [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, U$ @1 H% ]8 q3 K0 t1 d
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% J d# \$ {- _% n' _% `) u& ?
swarms.buildObjects();
) S$ u( D4 x2 Z8 o) O3 d swarms.buildActions();# l, Y: C2 v5 f; h& O
swarms.activateIn(null).run();
6 Q+ e, y& C- a* P# J3 L6 D }: P7 ?$ O* m* v% Z
9 h8 }8 j& ~- M3 m7 f
} |
|