设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10969|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# f' w# Q' @; j$ ?& y3 R3 D. G! ?/ I. X! _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ B. G' t. _  K. C0 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% M' S5 {6 E5 K; ?
swarm.SignatureNotFoundException
$ Q# b5 S  N8 k* F# S0 u+ ^        at swarm.Selector.<init>(Selector.java:76)& R' w& d7 S0 Q! _( D; I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 [3 S; _% X& H: j/ T: G
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ w3 D, c, `9 R2 V
" D/ Q+ |8 e) s, C6 g9 R+ e& g- V, [: {( g4 e
import swarm.objectbase.SwarmImpl;& I$ X" c- T: f: `- m- B. P8 J) W" b
import swarm.objectbase.Swarm;
. Y  ?8 a) I3 ~- b/ A: _9 Kimport swarm.activity.ScheduleImpl;
& v5 W. a4 ]  D  @+ T# Gimport swarm.activity.Activity;
4 L4 |5 \; R6 W8 B% [0 n0 w0 V: ^import swarm.activity.ActionGroupImpl;
8 m5 e/ [- t- Nimport swarm.collections.ListImpl;6 R' ]' ~. `' y0 V  q
import swarm.defobj.Zone;
6 L9 v7 E- u  l! kimport swarm.Globals;% R# S8 z; z! n/ a; I' a
import swarm.Selector;
' f! F/ q. M/ p$ a: Y* B: Gimport swarm.activity.ActionGroup; ! G/ j. T. @6 g; o; \9 c7 C1 ]
class Agent {
3 f9 C* m' m. o- g) t        char id;' c/ B7 k1 w5 e, j5 ]8 w

. D* X% N9 H8 E. h4 V) c. [        Agent(char id) {# Q2 O$ h: S* e8 r1 ?1 O3 p
                this.id = id;
2 s3 g# k+ e: @* Z        }: B' Q8 |2 q) s6 i1 O' d3 C

2 U! d) q4 v& I) V) v        public void agentStep() {
- ?! d' v( i# ^) S% u& Q' a! _                System.out.println(id + ":" + Globals.env.getCurrentTime());4 G& z$ _$ `; a- j3 q
        }
3 K3 h" V/ S1 p8 D- x}$ D5 O6 e, Y! \# }/ ?9 v

. P7 a+ p! C* d' n7 `5 [: z% H3 _public class ActionGroupDemo extends SwarmImpl {, S2 y: w/ h' N4 h
        ScheduleImpl schedule;
! \: p% i& W2 I$ o" c        ActionGroupImpl actionGroup;
2 @8 s" E8 Q0 g, _        ListImpl list;
: J# f" O% x1 b. ^: O/ G        char Id = 'a';
1 N+ ~+ }) U) R# m& J. t" L
. X) S) h8 u1 s3 U( ^+ r0 c        ActionGroupDemo(Zone aZone) {9 O3 K+ i, O1 u2 K
                super(aZone);
1 t5 |7 P% ?" a+ p* K* _                list = new ListImpl(aZone);
( n2 h9 h) t) w, H  t                swarmSetp();3 N  j' B: B- H) T" _. ]
                actionGroup = new ActionGroupImpl(aZone);  E- K6 i9 C& q/ g9 ~1 J' B% u! }
                schedule = new ScheduleImpl(aZone);: l' q4 J8 h2 Q* S% G
                try {
7 r& M, Q5 x! N2 m9 H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( ?  n2 T, N& d0 Y% S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 B- r0 K' @. c3 A3 L                        " v0 b& @1 x0 t/ H' d
                        actionGroup.createActionForEach$message(list, agentSel);
4 m" |% P, T6 |8 n' c                        actionGroup.createActionTo$message(this, swarmSel);+ M6 K% X6 b6 Y. z: C
                        schedule.at$createAction(0, actionGroup);( q6 O: w0 ~4 y" R1 {9 f: u- q
                        schedule.at$createAction(1, actionGroup);
! V( i1 Y. q9 x# F+ E                        schedule.at$createAction(2, actionGroup);
, r0 ~; d! j& T) z
7 Z$ b7 m) G6 h& }8 f$ N8 Z: X                } catch (Exception e) {! G9 ]& o5 ^2 V, L7 c
                        e.printStackTrace(System.err);8 n) l8 ~+ a2 G
                        //System.out.println(e);  a( s5 @4 z: r3 e; ?
                        System.exit(1);
: i7 n: P# N- U- f) [5 W& v: H                }
9 h2 w6 l$ B0 Y8 h
3 e+ j1 h5 i$ {' f. Y; H+ c
! a& d2 T0 H& u, [; w& ?3 u+ ^        }
: s8 j# M# x) P, j+ @2 F7 n0 K/ \! \3 `; r8 {
        private void swarmSetp() {; c( n- m- t- D3 |/ j: s
                list.addLast(new Agent(Id));7 j. @: `! n! B! N
                Id++;% p0 j" ~- z, \
        }. e+ A6 V( h/ f7 q0 [9 ^2 k
; U* _9 t8 k  [( D  y
        public Activity activateIn(Swarm context) {; G% z& x* |/ O8 d. X
                super.activateIn(context);" p+ v3 ], k2 H$ N0 V
                schedule.activateIn(this);
5 }) E/ }: c2 T! X6 z                return getActivity();$ `- C5 B* m1 D+ V! U8 e. e
        }
  C0 m' S" u5 z, p6 i2 c, d8 Y# ^) k, j4 b3 r' L
        public static void main(String[] args) {4 G6 K) E% K* X& h% D3 a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 ?0 f; u: [4 z4 i  O- A# D' P" ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ S& q* n) F  R                swarms.buildObjects();
' J7 M3 u3 t0 R# w7 \                swarms.buildActions();6 L, Q5 Q2 x% U( i+ h
                swarms.activateIn(null).run();8 d$ Y/ L3 x' v9 e& f3 i  g6 Q* l! B
        }
7 z% a2 \* A! l( Y, q1 U( R9 U( M% C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 01:13 , Processed in 0.017512 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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