设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7244|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ g" c% K  z7 f1 ~3 c
, i! y6 h2 C3 M* a5 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 E5 y3 D" L) d, J+ v# _& k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ n4 u1 X0 R2 L0 b
swarm.SignatureNotFoundException
- \5 h8 ?$ t" S6 u1 n        at swarm.Selector.<init>(Selector.java:76)
: {; f, F5 u3 @9 N6 U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 p& u& ~' P. v+ [        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 Y1 L, _! M; ]* E

5 U( r- j/ w" _) W4 X+ ?
. B; W' g8 w' n/ f8 Pimport swarm.objectbase.SwarmImpl;
3 Q5 s. u4 e* P1 p7 simport swarm.objectbase.Swarm;  _. q8 i' j8 u+ r0 U2 Y$ M
import swarm.activity.ScheduleImpl;9 G# O5 J7 L9 M% e
import swarm.activity.Activity;
/ R2 Y3 _) ~% ^import swarm.activity.ActionGroupImpl;: I# Y% `. Z1 m# I, t
import swarm.collections.ListImpl;# j4 x% w9 {0 f7 W0 N0 a5 E3 o3 j/ i
import swarm.defobj.Zone;
( l; Y: H& Z9 ]0 F& Pimport swarm.Globals;! u& d) C! Z6 ^2 h
import swarm.Selector;. o* `1 J) O& K5 M# L
import swarm.activity.ActionGroup;
& c1 \5 m2 B8 U. n7 mclass Agent {
2 D" D# g* T5 e* a        char id;) Y7 ]/ ^- I, l7 _7 h6 O2 h: T
, Z# Y& y. H. l  U, c
        Agent(char id) {% }5 A/ l3 t% k+ W
                this.id = id;; V! ~8 h0 N; t. b! Q
        }
$ Y) a$ i/ K" o* X. a$ W
; h$ f& r0 s+ G9 {1 N$ A7 a        public void agentStep() {
  n8 _" ?; o; a: u& V) m! ]                System.out.println(id + ":" + Globals.env.getCurrentTime());1 c5 L1 O9 X0 m- k' \  P
        }
1 _. ?; q7 z' L( @- g4 ~/ @! m}
6 m' K0 e0 S& K% c8 g6 a. ]
* _- y: f. K) G$ x+ ~" ]public class ActionGroupDemo extends SwarmImpl {2 P- Z  X5 j6 A" {2 L2 b
        ScheduleImpl schedule;% P* L( k8 }! |+ s3 f. K
        ActionGroupImpl actionGroup;
0 Q% D3 q5 Q9 s* s3 g6 Y, \/ [1 e0 K        ListImpl list;+ O# ~+ s3 a( m# M0 l0 {4 q: n
        char Id = 'a';
4 x) o: ]5 t3 V" E
) O1 L, }  b; z0 z        ActionGroupDemo(Zone aZone) {
6 x9 e# A, L" ^3 _3 @) h6 k: J                super(aZone);5 m2 x% o+ k0 R2 S% w
                list = new ListImpl(aZone);
4 V* r8 o$ h- W8 v0 k, A                swarmSetp();% Z; Y- a/ i6 c# g4 V' }
                actionGroup = new ActionGroupImpl(aZone);
2 N& h! J. x. L; W% k+ R; o/ e                schedule = new ScheduleImpl(aZone);
* {( L% r# g& a7 I                try {
6 k* h* ~) _! [; [0 W% G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 ^" w! ?5 B% w" L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; D+ |% }8 ?7 N% T. m; ^+ D( P6 A
                        8 r( [( Q1 c0 `; e
                        actionGroup.createActionForEach$message(list, agentSel);) }% T3 b2 M- o/ Y1 N6 y/ k
                        actionGroup.createActionTo$message(this, swarmSel);$ K- |, q0 r4 e, w7 z
                        schedule.at$createAction(0, actionGroup);
( b, ^9 C. R6 Y                        schedule.at$createAction(1, actionGroup);
6 J$ v  m5 C8 N  c7 S+ X                        schedule.at$createAction(2, actionGroup);
- w% _0 L5 _: ?; d: D4 n, S
% `3 k' |  m1 a/ U                } catch (Exception e) {
& U; N; Y: d1 p9 J                        e.printStackTrace(System.err);
: p* R; i$ |. r3 }' Y) f                        //System.out.println(e);5 j! N( [/ J8 g9 K4 P3 p+ X
                        System.exit(1);
( q( ], N3 A& E/ }                }
8 _. s) N" j8 N5 t% x# Z- U+ o: n/ T+ j8 Z- U' }

/ N7 |2 T- q1 ^. f        }
: C2 [! C7 x+ k! l: T) s
+ Z3 h4 S( d) r; E5 M2 g        private void swarmSetp() {: I- p5 T1 o, A% s+ R
                list.addLast(new Agent(Id));, Y& n7 g2 L# M) N* b
                Id++;/ \* f' s( w* i  A5 R% k
        }0 i8 y3 C4 t$ n) r
/ p4 [. q& |, m; L4 O
        public Activity activateIn(Swarm context) {
# Y9 O5 T5 l0 }' K4 D0 U                super.activateIn(context);
  y& @' w; X; ]                schedule.activateIn(this);
$ F+ }/ ^' n$ B7 ^                return getActivity();" w- o6 I; M7 L* W9 O! I0 N5 F, c
        }
- C, }% F  N/ e% L9 e! v. W& f7 L7 q! b' P" u0 E! ^, C* A' Z
        public static void main(String[] args) {& z9 N; t, n* f6 L7 u) j; ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) h0 V7 f2 J& h; h! e0 y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 ^( r+ j4 G- B. ?  M+ I
                swarms.buildObjects();
$ n: P- }% M3 Z+ o+ l3 a                swarms.buildActions();4 I8 v  u* N* X$ t8 w% N
                swarms.activateIn(null).run();
1 Y% ^) Y  s7 n; Z        }
4 M, ~' h+ f2 y
* a; |4 w. c. C5 z9 F}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-24 00:19 , Processed in 0.017225 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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