设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11095|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ V) p1 E. t( z. L
5 h8 h, N( c# M% a9 L1 H; q* {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 x5 t" v! K7 ^2 Q. S4 @! N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." A9 V% A+ a! K; B& ?9 g
swarm.SignatureNotFoundException
, @0 s  A* m$ w" a5 l5 F        at swarm.Selector.<init>(Selector.java:76)( x) p* Y( f7 a$ T8 n. A9 @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# H& B0 D2 C# m6 h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# W6 v  ?: i2 c1 A3 E# W
9 d' t6 ~4 H( k. H( @* J  h5 y: {2 z7 _% G
import swarm.objectbase.SwarmImpl;
+ s4 V) K! W/ i7 z4 u% G3 T: i4 yimport swarm.objectbase.Swarm;
% _5 @9 X1 h6 f( N8 M; n+ ]; }7 |import swarm.activity.ScheduleImpl;
% B9 t: x4 ^, ?5 Iimport swarm.activity.Activity;
: l8 A3 T6 m& j. H: Eimport swarm.activity.ActionGroupImpl;$ T5 v# k+ `8 Q7 L- }% U
import swarm.collections.ListImpl;
& R0 P5 t+ o3 J5 R0 X0 g' @import swarm.defobj.Zone;
9 P5 h. h. _, l6 t. yimport swarm.Globals;6 g0 n  x; M# c% h5 y. Q
import swarm.Selector;4 L; z2 H2 s: ~9 H; X. V$ o
import swarm.activity.ActionGroup;
( V. @$ u4 H4 {8 vclass Agent {
/ y) Z" D) q" M3 ?4 Q: H6 n        char id;
9 N: J) N0 K$ G# s: J9 m! ]& V, x! @# n9 \1 T$ f  r! ?' }
        Agent(char id) {* y! B) n1 T; m3 [, P; f2 e/ ]
                this.id = id;
) l) M' g; t, j$ R        }
0 p! I9 n5 g3 `/ w0 G3 L( V# x; V
/ A% {1 I; y: z' b  P# V        public void agentStep() {& P) T2 H& i9 {0 M6 @3 {
                System.out.println(id + ":" + Globals.env.getCurrentTime());# m: g- G0 `: m' L
        }
* O- M) Z; p5 t}
7 s5 x' N) [- G6 c. m# j1 e
. E+ [7 s, H7 k/ x3 l+ v0 I4 _; Lpublic class ActionGroupDemo extends SwarmImpl {
7 {; B/ \6 C' w( C1 x1 |$ B2 p8 Q% {        ScheduleImpl schedule;! S3 X  h8 p8 b$ C' F! J
        ActionGroupImpl actionGroup;% z5 E9 t6 h/ |- q( D
        ListImpl list;
6 |/ J  W: g( v0 S: e7 }        char Id = 'a';" P$ J' W# I& U

5 |, `; D) i" t2 @! H- D        ActionGroupDemo(Zone aZone) {6 G0 Z  J7 ^1 D
                super(aZone);
5 |( V* ?3 [/ S1 `  v/ n                list = new ListImpl(aZone);
3 S8 T' m  _, ?* l                swarmSetp();- O8 m8 E# w1 G5 f$ J
                actionGroup = new ActionGroupImpl(aZone);
. Y5 d: Q* u: x1 g6 }8 f/ V! u                schedule = new ScheduleImpl(aZone);
* _/ f1 p* l+ e                try {
* l& n& O& A+ k, B6 [- g  R" N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( }- m: ~1 H0 V8 u
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  G/ n2 b" Q: N1 ]% \' W, r: P                        
- |4 [4 _& P# H0 f1 N                        actionGroup.createActionForEach$message(list, agentSel);$ D2 _- |3 X' Z' g1 E1 d$ V/ N; O
                        actionGroup.createActionTo$message(this, swarmSel);
& K* y6 L8 N, f( \                        schedule.at$createAction(0, actionGroup);
& k0 Y# B4 M7 |! e- y! ]# M                        schedule.at$createAction(1, actionGroup);
, R5 x; b* [4 Q' y( o! `* H0 ^                        schedule.at$createAction(2, actionGroup);
$ @# c7 M) G* x3 g: ~
) T5 R  C5 G) G                } catch (Exception e) {
+ A: @$ E* w% ?' T% Y# X                        e.printStackTrace(System.err);
. G" G9 m/ ?. z3 U- K                        //System.out.println(e);
' _3 q: T4 W1 I& H                        System.exit(1);
# k* l3 Q$ z2 X7 j' u) M8 a7 Z                }
4 y- g/ j. y) ^$ K/ n% k  j; i
4 j6 j4 }; \( D9 S+ s1 @4 n7 x; A- U1 i
        }/ a: C' A1 w  d: ]( V( d
% J# E' [1 n/ G$ W. h
        private void swarmSetp() {- P* i1 C3 ]+ |5 a3 t- x1 L& M
                list.addLast(new Agent(Id));
' T. P) |9 r# c. t: Y                Id++;
. l( s2 m* H: _( z% }        }6 X6 S" ?1 o3 X* V
0 ]% C( o. G- d
        public Activity activateIn(Swarm context) {
/ F# t  \, m# c) z4 o. G                super.activateIn(context);
% B4 r) W) D) e; g                schedule.activateIn(this);" k1 O9 u' R2 }# C8 R
                return getActivity();
( V" z% i! Y9 F) M        }9 Q) a3 l" z: g4 j. N& W( H5 g

& h( o: J2 i* D  o8 E7 z6 [8 F9 T/ M; \        public static void main(String[] args) {
7 g: H8 ?$ [+ q  ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# |! B* g' |1 b' z$ V
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ B8 s2 _( l/ {+ {0 `
                swarms.buildObjects();$ w! I, l+ R6 f/ X/ u
                swarms.buildActions();
; I" S* Y" \& U                swarms.activateIn(null).run();% [( N: S, M2 j# e) x
        }, Z7 @8 T/ [6 \& v: z' W5 r% n4 D

. j8 _. b' g; |2 F* I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 21:31 , Processed in 0.012224 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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