设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10951|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& H  p# U5 ^% H* c: t
9 B! k+ r) o1 n* ^1 w" s+ ~) T3 x: Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) `4 B* m6 K, z6 j  ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# k* F4 ~7 C& ]1 C  n
swarm.SignatureNotFoundException
4 V# L5 C( _- r. f        at swarm.Selector.<init>(Selector.java:76)
& f/ l: l4 g5 P* |% ], j& }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); c  T- i/ n- o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% ~$ m2 h3 z  ]0 F
2 X) {7 @1 Q9 }; I5 i  h2 M: s

1 i# B# w% h0 A/ i/ g9 E/ eimport swarm.objectbase.SwarmImpl;
% }# p% b' O* C5 }9 v2 h  himport swarm.objectbase.Swarm;1 N" ^- K: t! k) j0 c" ]
import swarm.activity.ScheduleImpl;& ~' q9 @: [& T2 Y5 T% f! R# E  v
import swarm.activity.Activity;, M, v0 @, A- o! e( c0 x  N8 @( l
import swarm.activity.ActionGroupImpl;
9 I' s2 Z4 x0 ^# O" {import swarm.collections.ListImpl;
  l; D. x; o+ ^$ T) z* Fimport swarm.defobj.Zone;
* x1 b& |1 P; U$ Fimport swarm.Globals;% V' x; K9 [5 k+ ~' \$ u, D
import swarm.Selector;! x, S  T1 F4 E- f3 ~( F; a, ^
import swarm.activity.ActionGroup; 4 g) G1 n# @$ \1 h. e8 [
class Agent {
( M/ E! w* \! d1 r3 W) u        char id;
4 g0 `& V+ E! Y& M* n8 B7 ^+ l
$ }4 y2 a* i! Q- [6 J& G: \, S0 x8 B        Agent(char id) {! ^' E% k9 S) ^) S
                this.id = id;
5 D, V7 V- V! p5 b7 d$ a; ^, i        }
( S4 s! c1 ?; J) `, W& A6 W+ {1 e" V/ m/ f
        public void agentStep() {2 Z: O- k% x& A0 p  U1 S: C8 m* Z0 v
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 F* S  c9 z- M# u; m- x        }! Y9 P6 {/ ~' i' T
}
$ n) E. y7 ]" |7 v; z! ^# u3 _" D2 Y" h! Z% S
public class ActionGroupDemo extends SwarmImpl {+ a3 S- B$ `# B# z2 z2 t; V
        ScheduleImpl schedule;9 ?- S* A, m3 e5 I8 G4 c- n/ A: K
        ActionGroupImpl actionGroup;
$ x4 g1 `9 R/ R8 d' H# t" D        ListImpl list;, G. N+ D3 V2 n. J
        char Id = 'a';
2 U- B9 {9 z# |) ^% \& `9 y( G3 T9 d! M: U9 t$ ?" c5 W
        ActionGroupDemo(Zone aZone) {
! O' }2 w% v7 r/ i. Y9 i                super(aZone);0 |3 `1 c' ^9 P7 ]+ c' ~) ~! \
                list = new ListImpl(aZone);
% w; }2 u! M1 h2 j+ |                swarmSetp();
9 }6 M; _" V5 @/ h0 F  ^                actionGroup = new ActionGroupImpl(aZone);2 o1 z! g* K( w- r7 z& ~% w& s- S0 h
                schedule = new ScheduleImpl(aZone);
3 Z( B5 G! M, G; d3 P( \; x. e                try {5 Y2 X8 H$ J3 |8 g6 b( ?
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 X0 a, b# L6 }8 x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 R, v' y2 {* x: D7 o
                        
. D/ k4 `; q1 r6 d* `0 _' L                        actionGroup.createActionForEach$message(list, agentSel);& x* l5 D( Y2 n. H$ s/ P6 o
                        actionGroup.createActionTo$message(this, swarmSel);
$ M2 U7 O: l* I8 X, v: _* a: I                        schedule.at$createAction(0, actionGroup);
, S3 w* n* U( G6 K$ I" ]7 M2 D                        schedule.at$createAction(1, actionGroup);. C" f& A7 o2 N; f
                        schedule.at$createAction(2, actionGroup);
' l! `5 ]2 g4 V4 `2 v
2 q: S; [# `9 O2 a) M& j                } catch (Exception e) {( _5 {% w3 x/ V
                        e.printStackTrace(System.err);0 ~' u- ^$ k# Y: {+ j, h+ R+ g
                        //System.out.println(e);1 {% k! I- \; c* C& g; p3 Y1 Z; l4 ?
                        System.exit(1);4 W+ t" j# m$ j' ^. F5 G+ b
                }6 t. v- m- t# j- L# ^2 \
2 k+ T4 _" ~& \) w" y' W
( x! R1 a6 b9 A! L- T( Y6 t% L
        }4 x3 q; P: d0 s7 L* ~) G3 s, F5 @

1 h% I' I8 g# ^9 b1 H        private void swarmSetp() {4 C  l  g0 d$ s) o8 N5 m. c% [
                list.addLast(new Agent(Id));
& E! Z4 a& |! r: R. X                Id++;
. W; M3 \" B  J4 Z, d        }. W  J+ H. ^* x: i
3 r7 B% a) ^1 |1 _' p+ q
        public Activity activateIn(Swarm context) {( C$ m* w2 P; j2 J; c
                super.activateIn(context);
. l; x7 V- c6 L& U7 n, z0 [  c                schedule.activateIn(this);* v3 l3 Q: B7 p- J1 r" _6 P
                return getActivity();+ W) H$ h7 G2 N9 h3 i7 Z6 G/ P4 U
        }
) Y; p& K- b- L  J, d9 r9 a! X/ u2 c! x/ T' [/ N0 M8 M
        public static void main(String[] args) {# O& x8 K# W. V) o/ V
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 J" O4 r& K/ Z2 e9 `0 ]8 g: F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ g& A6 k: U2 L                swarms.buildObjects();# T( O5 n% |: S) Q
                swarms.buildActions();
3 w7 O: `+ h4 U" E6 {                swarms.activateIn(null).run();
, V- R" [) S% q/ L2 W+ r% v        }
8 o+ g5 p8 w" k2 U) ~+ c  }* y  S1 y9 E  N
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-28 15:24 , Processed in 0.013487 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表