设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7699|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & E$ Q0 z! o; p  h3 Q2 P& j
! W$ f8 |2 }; n3 ^! g6 D/ V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* X- R, |2 y  p+ V& z9 f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., W5 D/ Q: H8 b3 {4 v
swarm.SignatureNotFoundException
3 _9 _& M# ?4 g/ U4 |+ D        at swarm.Selector.<init>(Selector.java:76)+ Y% P7 p  O3 F, c6 C9 ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" v: ]0 w5 i/ M/ ^8 k& g6 `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* m( [0 K9 T- @! v1 g3 B

5 L1 H6 j- x$ p' a
! S! \* w- d' K; `$ \/ R1 z  _. Nimport swarm.objectbase.SwarmImpl;2 m3 _$ A. \! t
import swarm.objectbase.Swarm;
& r  C' _5 Z. V' r$ N4 ^. Qimport swarm.activity.ScheduleImpl;
; s7 Q2 ]% }# O; X7 A! rimport swarm.activity.Activity;, Z, G0 \4 D# q; [$ R1 ~& Q8 A
import swarm.activity.ActionGroupImpl;
  S9 b/ `* p* h* timport swarm.collections.ListImpl;
( O4 q4 W) r! H6 O5 W% Bimport swarm.defobj.Zone;
/ \5 i2 z  @! [import swarm.Globals;
0 }  U- T6 l3 s9 Y7 gimport swarm.Selector;
% h3 v" U' N- A% [! Bimport swarm.activity.ActionGroup; ( Z/ t. D* ?5 b& l" U
class Agent {
# W$ g+ e6 V: A6 b: \% a        char id;0 i# d. j/ g* @+ L3 N: ~' u# {

1 G' ~: k) r. T. ~3 Y0 x        Agent(char id) {
$ a9 G& {0 Y. a4 Y5 D" e8 q                this.id = id;
# W& i* O) K( F0 j! R        }7 f/ z; A  U5 G. C" K
" H9 e. q6 _+ R. ^& m
        public void agentStep() {6 n/ ?* G2 T' Z* \6 x, E4 [
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 |* P9 Q  u6 ]+ O
        }* ?, A9 R1 z% d8 A; c
}
" K$ o& l) p7 |5 L- b$ C& _" p
) v+ n9 w/ Z9 c( K8 i- {public class ActionGroupDemo extends SwarmImpl {/ Q6 f/ U) `: Y
        ScheduleImpl schedule;
& j$ S+ T; Q& j% N" y2 I. Z0 w        ActionGroupImpl actionGroup;; v9 N! ~' h( G
        ListImpl list;7 g. m3 [' P7 R2 d! i
        char Id = 'a';
3 |( [) _- s" d# D: h8 C% B
. `2 L! w& A; Y+ i4 r) K9 y        ActionGroupDemo(Zone aZone) {; T$ P5 k3 J' q
                super(aZone);" l. }2 y0 X9 p) v& @
                list = new ListImpl(aZone);: W! r& _; |1 x6 v' D( H
                swarmSetp();+ d1 S4 ~+ O  r% b! L
                actionGroup = new ActionGroupImpl(aZone);. }  h; j7 _& f  P0 a2 m0 J# r
                schedule = new ScheduleImpl(aZone);/ R4 q1 C- b8 K# f" r! x1 ]
                try {
6 D/ ?6 k5 V: P6 i# Y$ ~% S% L                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 Y+ v4 f2 Q5 L7 b" H+ n- b! B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% a5 |" _9 P! \  I                        2 \  q* a" L: a* e$ y
                        actionGroup.createActionForEach$message(list, agentSel);
, D7 Z9 t( F; }9 v5 x                        actionGroup.createActionTo$message(this, swarmSel);
6 u; b4 u# p/ d4 O- a                        schedule.at$createAction(0, actionGroup);
4 k' r) e7 A1 H: A* f7 q, n                        schedule.at$createAction(1, actionGroup);
% a- K0 M9 x2 C+ z' F- E                        schedule.at$createAction(2, actionGroup);8 g& ?+ z. G! V  O
9 t  l0 L4 k, x+ h
                } catch (Exception e) {& I! |4 F3 I2 F1 f* a) x! m
                        e.printStackTrace(System.err);& L/ h8 }  m# e' ?4 a
                        //System.out.println(e);. l) [/ K) X0 g$ t) X  q
                        System.exit(1);3 N/ d2 @/ A0 O
                }3 d+ r5 ^/ _1 _. |- P" T, u( F; ?
7 o+ y6 p9 Q! O8 V% \
2 o0 K, p3 ?# D' h* q" X9 u
        }
' [% ?+ E8 A% m3 _
6 g5 T' L( ?8 `# x6 B& |+ {, b        private void swarmSetp() {
5 J+ E! x0 Z7 k4 H1 t7 V+ }$ \# h                list.addLast(new Agent(Id));
2 c4 P/ f( \! ?7 h" C                Id++;
! V  D3 \7 v, v" {        }
/ c7 n6 R  w0 u( B$ z# ], q
2 G# J# @! o% @, c3 k0 T- P        public Activity activateIn(Swarm context) {
$ A. B7 I: Q& A" }# M                super.activateIn(context);
6 U6 b! t/ C" ~1 G5 c, Y' k                schedule.activateIn(this);
1 y* X& b; K: J! e. s                return getActivity();
3 x8 ~% r. @$ E" T5 r9 I8 E, b& f, k        }) g5 t5 c, H' r! p3 Z

! O$ @7 Z# t2 o+ ]        public static void main(String[] args) {
2 \) D7 _- E5 Q6 T) z/ N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ B' m2 u; R5 w+ g$ K: R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 N0 ^( g& X' C+ A& w: }
                swarms.buildObjects();
! N9 D# s' g  c/ |8 W0 v# p- s( ?                swarms.buildActions();4 {8 z" [/ a$ X+ x* O; V' R
                swarms.activateIn(null).run();
; N0 Y; G$ y$ R+ {% `$ L4 L1 X        }) W/ e) R% _0 I9 F' D2 p5 V8 ^9 j, H
' Z$ W1 g1 v( q4 y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 21:04 , Processed in 0.019030 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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