设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9156|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 \! p7 m+ P' `$ {- y! O" h
6 [# D7 L; c" l5 b6 w  j3 i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( _% b  Y8 e$ g; h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; ?0 q, i- }/ V" J1 E5 z& iswarm.SignatureNotFoundException
/ z5 y/ `% B* k0 a3 H! c        at swarm.Selector.<init>(Selector.java:76)
5 N6 ^- o! V# S; U( A0 \8 Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% T* y0 D* \2 L/ g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 F7 B3 ]+ f5 k- l
3 }5 n  D, D9 r* d+ y
- _0 ?; S6 H- F
import swarm.objectbase.SwarmImpl;
- s  [- G3 O: v5 Y( eimport swarm.objectbase.Swarm;
) s+ t* A- F; |  r; aimport swarm.activity.ScheduleImpl;- U* b: v' D% t, o* ^
import swarm.activity.Activity;7 x9 g7 h% A' N) S
import swarm.activity.ActionGroupImpl;+ |& C7 |6 A" I2 G- j* N, n+ W' T
import swarm.collections.ListImpl;
* U5 R( E) l: l9 U8 c' ~import swarm.defobj.Zone; 8 E1 U+ \$ `  u7 s
import swarm.Globals;+ k& R* A9 e+ u0 s
import swarm.Selector;
6 e; ?* I: t- i( m4 M! vimport swarm.activity.ActionGroup;
6 i. D  D3 E& I; l  W: I& `4 R+ zclass Agent {
  m# f+ e% \: p9 v        char id;. `  Q* Z% `. E  q# U7 ~
; Y2 y! B+ L0 y  b  r
        Agent(char id) {
2 k% K! {. O, {# {! _8 b# J: R" |                this.id = id;" g2 S4 B+ i* ]1 Q6 P' T
        }
. u( x5 `2 v, f  V. S/ ^/ c6 G8 a' ^
        public void agentStep() {! M0 ]8 [. h  ?5 `8 `+ G" S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 l. @9 c* m; v! M+ `" d        }
( P7 n2 t% d% d" K/ x}7 o- x. r* w7 E  P5 ]6 }
, H. ^9 j; {! H( y( J( R
public class ActionGroupDemo extends SwarmImpl {" w7 S9 V( R) y4 i/ E3 T3 j2 u
        ScheduleImpl schedule;% ?6 F' j: E. C
        ActionGroupImpl actionGroup;' `3 v/ k) e' z0 {2 d) m, J
        ListImpl list;
% a- u$ ?, F2 Y9 ?& F        char Id = 'a';
2 J. B$ N7 w5 U0 ]  C  w3 ?3 I. N( Z7 ]5 t8 }2 C
        ActionGroupDemo(Zone aZone) {
; ]4 C( B; F+ H: ]" w# S  N% s! P                super(aZone);
# f- t8 v5 W! T4 |8 j/ ^                list = new ListImpl(aZone);
9 W# f1 p+ Z& c                swarmSetp();
" s) {" u) `, C5 ?1 M1 Z                actionGroup = new ActionGroupImpl(aZone);; n1 A: D) N4 ]9 [6 t' j/ Q
                schedule = new ScheduleImpl(aZone);4 T* J& M2 P% i# ]9 c0 N5 \! E
                try {% k0 H' D3 g# V8 b: I" _1 \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  y1 a/ r7 L4 |. A% x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ K' W! Z$ \# Y1 d. G
                        
! n& ~0 H# n  n2 f                        actionGroup.createActionForEach$message(list, agentSel);1 D( X, V6 M8 a0 Z+ r2 N
                        actionGroup.createActionTo$message(this, swarmSel);
: J9 ^) u5 i* U& r                        schedule.at$createAction(0, actionGroup);
7 C, H# C  E' `                        schedule.at$createAction(1, actionGroup);
# s" j: K1 \4 ?+ T1 I8 D( x, A                        schedule.at$createAction(2, actionGroup);, A3 e) K5 A  A( X" E
6 m% _. T; f5 T$ T( v
                } catch (Exception e) {
% g3 Q7 q9 I) T! n% s                        e.printStackTrace(System.err);* p6 m$ P& c- f; V9 L
                        //System.out.println(e);7 Y1 H, _3 N2 z
                        System.exit(1);/ l+ i5 V% k" p8 m/ Z
                }' {4 e, F) h# O+ h8 x$ \  s" p

7 p) i! Q1 ]2 R5 [, P: A8 d. w
* m& I4 m4 v5 H) p        }
9 Z# j8 ^4 t# d9 ~
: B4 A, J0 F" I, f* b' P& ]        private void swarmSetp() {
; Z" U( K! V; A0 {. `4 o/ e* a                list.addLast(new Agent(Id));
! ?$ q; g; K9 h, \) `" \                Id++;) @- M9 m3 s8 @
        }7 O; Y6 l3 o8 ~; F6 Y
7 d( G$ T+ T8 _. Y+ k; Q" {
        public Activity activateIn(Swarm context) {
* F& ?2 u8 Y: T9 G6 S- ^4 u                super.activateIn(context);' }% r/ a, h; M0 r" |8 A! j# e: X
                schedule.activateIn(this);0 i8 U) K+ L+ }7 @4 Y& M
                return getActivity();2 R! i2 X+ I  g5 n8 @' k
        }
! O% h  ?- |  l9 O# n4 W7 R: V/ ?6 S8 H  I" o$ }5 N
        public static void main(String[] args) {) ?3 b3 t/ ]9 g7 P" e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 K' ~6 R( ^# z, G5 K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 N7 @; |- g! K- |
                swarms.buildObjects();
3 t) B1 K# H2 q  n( L3 v7 `                swarms.buildActions();
6 C+ }5 L* o  h1 d' ^" y; P( H3 X! [                swarms.activateIn(null).run();. H6 g$ J4 ]8 W, m
        }
) \4 l: I  f  X" j
( F" U5 X! Z7 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-3 02:35 , Processed in 0.020258 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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