设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7907|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & H- Q9 D% D2 h

, ]: \" Q. c3 q+ z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 u$ v, n+ ]* W: {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 C% z+ c+ j$ }swarm.SignatureNotFoundException, |* M# ?3 j6 E1 u, y
        at swarm.Selector.<init>(Selector.java:76)
1 d. C/ f  t& ?* I        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ `: V* N% _5 ]- _* G1 k+ {- d+ J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 ^; A, T/ t. T, ~, Z7 u* {* M* t) _2 t5 p; E

  x$ E9 @, F2 k5 O& Q: t7 T2 Cimport swarm.objectbase.SwarmImpl;  j- a; q) U7 `6 I4 F  E6 U6 e, V
import swarm.objectbase.Swarm;
- q( f# g  I# ]import swarm.activity.ScheduleImpl;5 O# m1 q1 S0 O  N6 K/ c
import swarm.activity.Activity;
6 T5 J( ^/ [6 t, G& yimport swarm.activity.ActionGroupImpl;. y# C5 l* f" r% f: U; u) q
import swarm.collections.ListImpl;1 G! N. h- i8 H1 o: h
import swarm.defobj.Zone; ( j" s% d( B# ?
import swarm.Globals;
' v5 m2 ?( a% cimport swarm.Selector;9 Y% J) z4 y8 Q& `" [$ y" d3 F
import swarm.activity.ActionGroup; & x2 i, v7 U. @
class Agent {& D. u6 g: h$ f4 x! x
        char id;
8 w0 r0 L1 q4 N9 d/ G4 S0 r1 Y& s/ n7 C9 U8 u& [
        Agent(char id) {; k9 R1 y9 v$ ?1 e& J
                this.id = id;
8 ~( ?* J2 O4 X, x1 A; b) R        }  ^( @) Y  c3 K* z/ r( l& |7 X
( ^5 y" f0 f7 r. v, e  U
        public void agentStep() {5 ~: {4 j5 b$ W  J: b
                System.out.println(id + ":" + Globals.env.getCurrentTime());' ?& |2 T0 O1 F& o4 C( p8 o
        }. t' G$ B8 f7 B; q
}, t& }- b3 C0 M  c: q
( K1 }" I  d" Y# m3 t+ y
public class ActionGroupDemo extends SwarmImpl {
) F: T" C& }1 \/ ~% ]3 ?        ScheduleImpl schedule;
2 P$ ^, z* d$ T4 q0 I8 y        ActionGroupImpl actionGroup;
/ Q; U" x! a- ]- o- r) R8 n        ListImpl list;8 Y8 C6 v- K5 C  z
        char Id = 'a';
5 d7 n  ^6 I6 J% [$ f* F
% G1 q. w4 [/ N, x8 m0 g        ActionGroupDemo(Zone aZone) {
4 y; H! X* |% k4 a3 S                super(aZone);9 b2 r2 h( L6 t9 B* ?
                list = new ListImpl(aZone);& F! ]& j" _  _$ I7 p+ e' J
                swarmSetp();. ]8 \1 j- d1 K
                actionGroup = new ActionGroupImpl(aZone);& m3 Z7 b2 b. f  Q; }( _  c
                schedule = new ScheduleImpl(aZone);. r: r" X( ?, \
                try {
, {, d4 Q  g9 Z: n7 N: L8 P, N, ?                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" V% v: d$ n4 s
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- m8 [, U1 \; a! W( }; B2 R                        ) B4 N+ c, |0 h- Z, D
                        actionGroup.createActionForEach$message(list, agentSel);5 k5 d& R6 N* }) \0 z& x
                        actionGroup.createActionTo$message(this, swarmSel);+ r! ?3 [4 D+ s) a, u5 ^
                        schedule.at$createAction(0, actionGroup);3 f: P  g2 J& c! a7 T2 q
                        schedule.at$createAction(1, actionGroup);+ b4 k4 w; \4 Z+ I7 }6 M. r: ^
                        schedule.at$createAction(2, actionGroup);# P' N. U9 _( s. v+ {  y

2 ?1 f0 d) [. V7 a4 x                } catch (Exception e) {
$ @. \; Y" j0 e8 B1 w3 S( V$ x                        e.printStackTrace(System.err);& r) Y/ b! x" m! W& e9 L5 j
                        //System.out.println(e);, u6 s& R1 N  G/ @
                        System.exit(1);
2 D8 a. D4 I. h& T! m1 k                }
5 V6 I- D) K0 j0 r
9 f& k' j; n1 ^' x/ L0 L7 l& s; i( ~( P) y4 i4 X: K
        }
6 f; ]6 y5 n, J, t8 o$ e: x% Z
        private void swarmSetp() {, J9 r9 C9 [0 V  K% `
                list.addLast(new Agent(Id));
- h* h5 q. D% j# i                Id++;& d" C& j* Y2 B! l
        }
  f( q/ G" ~+ [2 O  j6 O) x
& c9 @+ |0 z. F; K* A        public Activity activateIn(Swarm context) {- H9 G# [$ l- E+ t
                super.activateIn(context);
( _( U" X2 r9 ~                schedule.activateIn(this);9 V! @8 k  n  [
                return getActivity();
: M0 J: ?6 ]; y9 v5 |# l        }
% g) k' A: r- Z0 V2 H& [7 m: n' @' [3 Y
        public static void main(String[] args) {& [# |. V. d7 ~) E
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) x# f4 A' B: Y% t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) T# ~% o$ E& t9 ]( `- e; Y: }                swarms.buildObjects();* H3 l( |( I6 P1 C9 P; @4 s. h
                swarms.buildActions();
6 a& I# j- x/ w* O7 o# Y                swarms.activateIn(null).run();( n/ @* c5 H" v: _
        }& S1 e8 b0 ^5 F- A, r
; M( K! P. s) }0 g$ P$ l4 I3 ]
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 00:49 , Processed in 0.015329 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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