设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8863|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 {3 ~$ R3 @% L" h
0 G6 C3 Y$ H( ]% h& {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: p. a: s7 H, e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" X% ?& D. }# z: D+ J9 B' Jswarm.SignatureNotFoundException/ X' [* [! ?- l0 X, p$ @
        at swarm.Selector.<init>(Selector.java:76)- f+ k2 @0 K2 l% x9 Q+ j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- Z' w0 S3 }4 l# J& P        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 R( X# }. J. d7 Z1 g9 T0 J
  P" o/ ?6 q1 ]! _7 o
. r2 d3 d, d4 K9 a- @, G) ?  aimport swarm.objectbase.SwarmImpl;0 l5 {5 T: u5 F+ s' x
import swarm.objectbase.Swarm;! ^- B# @' A" g9 S! u, z
import swarm.activity.ScheduleImpl;4 i1 w5 d* P' x
import swarm.activity.Activity;
' L5 x6 N) E0 Zimport swarm.activity.ActionGroupImpl;) [% v; H8 I4 B
import swarm.collections.ListImpl;
  J/ y, K$ }! w$ {/ c2 [7 @import swarm.defobj.Zone; 8 r# Q4 y8 Q, n/ o' q; R' {
import swarm.Globals;
8 N0 S( \, T2 k& P# C" pimport swarm.Selector;" r2 A. h5 Y5 b6 {* |! c) Q
import swarm.activity.ActionGroup; # u2 j6 ~3 Z5 Z  ^- b( O
class Agent {; w; [& c; Q1 m' D
        char id;
0 B" f) F' Q- ~1 d% o8 Q+ A2 t  c; p& ~' |
        Agent(char id) {
4 t' j, C4 K; m                this.id = id;
/ Z* }# }6 c) Z& j        }1 w: l  b7 R, J6 U

  [2 e2 C4 F6 ~1 w        public void agentStep() {/ W. k: W! K- ], n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; x, V$ s  j0 s% `        }2 ?; \* K& i( i) v  F* m
}
! n" g* }+ z3 K' X  W+ h  p
' M. R* f7 x  B% Jpublic class ActionGroupDemo extends SwarmImpl {
4 V5 i: l6 O3 Q' h. F' B8 Q        ScheduleImpl schedule;
  b; W, }! G9 ~3 f0 _5 c9 ~        ActionGroupImpl actionGroup;8 Q. R0 A) v: W' g% R
        ListImpl list;
7 P3 Y( l# D5 [8 L% ]& U6 D        char Id = 'a';
/ W$ u+ J. T7 G5 c9 Q: f  w7 _& F# L" J7 d
        ActionGroupDemo(Zone aZone) {
+ o2 k- S$ l5 g% B! t3 n1 o                super(aZone);# j# A* f2 S0 }- ~% h( H6 y
                list = new ListImpl(aZone);
; v! C2 T0 I" c$ \5 @' a                swarmSetp();+ n; e" F$ S# q. s
                actionGroup = new ActionGroupImpl(aZone);8 v& m  h2 Q+ r; M
                schedule = new ScheduleImpl(aZone);
8 P6 k; @) [& D: \/ D5 z' H( F                try {
: l* X& U, s/ Z$ \: J( o                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 E5 X9 Y& _1 o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. M% e! l$ h; x1 L3 u- e2 h1 h                        / ?( @- C; k) m5 B+ h$ T9 v) n
                        actionGroup.createActionForEach$message(list, agentSel);' q: h% v4 D  G
                        actionGroup.createActionTo$message(this, swarmSel);, H$ P9 p  l0 }6 H8 f" q6 c
                        schedule.at$createAction(0, actionGroup);
, L2 Q9 z  i9 A, A& A                        schedule.at$createAction(1, actionGroup);
9 S9 ?4 J! J2 i. z                        schedule.at$createAction(2, actionGroup);8 a& `- Z3 }, @* e* ^4 N' M5 P- M

* ?. N! J6 C6 X                } catch (Exception e) {4 u! H# u$ k$ P& D8 M: r) L
                        e.printStackTrace(System.err);
, p8 T. z+ \5 s4 \                        //System.out.println(e);. o& o% w5 F" ^* z1 L; O3 ]  l
                        System.exit(1);$ b, h5 D! l! d& D' B+ g4 _5 V* x
                }
; M# b/ `* b9 U9 Z9 W; K) V" f) h$ }0 N+ N5 C7 v) u
$ i9 K/ D* E. h2 L& N3 @2 I: d+ M
        }4 q3 D) R& {+ p( U- L
& I8 x) V. J+ @+ D/ E
        private void swarmSetp() {
  s% Q1 \2 T; \  v' X/ p5 c                list.addLast(new Agent(Id));
0 Q' q1 g9 b0 o                Id++;  |6 P, [3 z. [- c- P( B7 H( q
        }
  M9 \5 [9 M+ W4 N2 G1 G1 o5 u7 c! ^( ?$ D# i
        public Activity activateIn(Swarm context) {! v, L' \0 r4 _9 D+ z0 }
                super.activateIn(context);
: V: A. Z1 l: Y0 W6 R/ L9 \$ q) A                schedule.activateIn(this);
) _0 d8 e# i1 Z# h0 @$ n0 _                return getActivity();8 }, Y/ N% v6 N
        }
! S& ?# W0 ~% S7 G* t% R+ w) |5 `# }3 L2 Z' `/ F' s5 q
        public static void main(String[] args) {& I4 x  t& w0 F" z! y# M, X; L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- C- M/ q/ @# Q5 Z* W+ w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 Z5 `# D6 p% f1 ^; \6 r
                swarms.buildObjects();  g& j2 s0 ~8 n( o, p
                swarms.buildActions();
" p  l6 B6 |; R4 j9 D3 e5 _                swarms.activateIn(null).run();
/ Q. q' E( F1 O% \" d5 B. H" w        }4 Z6 s, E8 ?( r& @7 Q, V/ P
% p0 m( y! N6 D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-25 00:48 , Processed in 0.019133 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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