设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13172|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 f) L$ ?' H( D, ~. K
& B0 O9 x8 s% M7 A- K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) r( S: m' P  k! U+ _+ C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# ~0 H$ N2 E" q0 g+ d
swarm.SignatureNotFoundException
6 v9 h6 N% O9 S2 R        at swarm.Selector.<init>(Selector.java:76)5 v9 Q( {5 e  A9 P1 K, `% F
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 t/ K, {4 v2 S- b
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ i3 N3 @2 a# p9 ^, y0 `/ o

# f' E" A; P% Q+ L2 k! L& V( q( r, ~& L: n/ q" e2 F) [- p9 W" V
import swarm.objectbase.SwarmImpl;7 v, e* Q2 Y" \# z
import swarm.objectbase.Swarm;# ^& Q" v2 k8 R
import swarm.activity.ScheduleImpl;
& M5 F0 l; q2 p. k7 f5 aimport swarm.activity.Activity;/ t1 C9 M  s8 Z
import swarm.activity.ActionGroupImpl;
8 U# |+ U! W' g) X- l0 wimport swarm.collections.ListImpl;* U9 l/ b0 b+ R5 ^
import swarm.defobj.Zone;
5 U5 H% L% G* ~+ Z" Yimport swarm.Globals;) T) s, S2 Z1 T  m
import swarm.Selector;) y& P0 C# W$ S# P2 l9 W
import swarm.activity.ActionGroup;
, Q8 K* B' b/ l* Kclass Agent {. D& o$ B" r% c6 s
        char id;
6 m( B+ p+ P1 }" A  N/ m! {' r; N' B, F1 F" g) H5 y8 ]' w
        Agent(char id) {! P4 z1 A9 R4 s# l4 G% R# b
                this.id = id;6 j) U! p' V$ b0 n  p
        }
% L7 ^2 I( k  g4 C) [: U; s
& j5 D5 S+ |" D5 o( L/ ~        public void agentStep() {" s; ^# u2 S$ P" g1 Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# l3 e* Z/ v( X$ K        }
- u' E/ C7 ^' _' M}  F$ w3 u3 }1 n5 s& _
; T- }. e7 l; h! t$ j
public class ActionGroupDemo extends SwarmImpl {
0 e" u% u) i: j3 u# l        ScheduleImpl schedule;
( X/ K* O6 {) \; m% D, W        ActionGroupImpl actionGroup;
  D2 y! M1 {" D0 F# [0 g& x8 P5 R" f        ListImpl list;
" X8 G- f& X8 k/ I* n& J        char Id = 'a';
0 a3 @0 ?/ J0 u0 D+ y2 V& `
' A% m/ H$ r; |3 ~, p        ActionGroupDemo(Zone aZone) {: E$ S; E! z2 ~2 H  @. Z. \+ A3 p) s
                super(aZone);
5 R8 e1 s1 ~4 S0 ?9 e- L. s% o                list = new ListImpl(aZone);6 a- A  k& \/ Y, M, A$ C
                swarmSetp();+ F3 {% k- [" C! C: N
                actionGroup = new ActionGroupImpl(aZone);
. x: _, |. |+ v* Y- m1 q$ n- s$ @                schedule = new ScheduleImpl(aZone);
3 i% A& m6 C$ w0 |+ _) V3 v( _; b9 s                try {! z2 b6 j- A- M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, }8 }1 X3 Y! p2 D- t3 o- |$ n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, a- C8 x6 u& }7 }, A6 L+ [1 f                        8 l/ ^: `5 g1 ]6 T
                        actionGroup.createActionForEach$message(list, agentSel);
4 c7 K8 |+ V- S0 g! c; q% A                        actionGroup.createActionTo$message(this, swarmSel);
: }/ h& t" \' b4 B. N7 S& T                        schedule.at$createAction(0, actionGroup);/ G3 w: c7 C  T. u6 {0 C) T# T; B4 ~
                        schedule.at$createAction(1, actionGroup);
( u. B6 E/ n  y, E) f                        schedule.at$createAction(2, actionGroup);
+ c" x. d2 a# X% G( Y; l9 ?3 a/ g8 t9 r: y! D
                } catch (Exception e) {
2 Q* h& [' A4 D9 p8 `4 Y                        e.printStackTrace(System.err);! w+ O& ?1 K, m
                        //System.out.println(e);% `& ~0 F6 e4 q/ d6 g
                        System.exit(1);
' {% ^% l; B2 i% n9 z9 Y                }
) l2 K  w$ H! r1 `
# v3 t' u1 n# B" x8 g0 N9 h$ a8 B# C8 F  @
        }
0 R7 z) a8 r8 k  v. A& m% P
2 @$ q5 f4 [  M/ |2 G: f        private void swarmSetp() {
1 V1 a0 P4 C& e$ c' n0 h' p  Q                list.addLast(new Agent(Id));% }; a0 V4 j% u" n4 Q' m6 s5 P5 C; m
                Id++;
# }$ Y. ]+ n% y# a5 ~        }
- g3 X- N4 L& S. f9 J! c, `8 ]# ?( N( T+ r* G& m5 D$ a
        public Activity activateIn(Swarm context) {5 W6 w; K& [0 b3 \% }: y* g
                super.activateIn(context);
  g1 R9 Z" g% o0 {! j2 T4 @                schedule.activateIn(this);
9 R: q  F6 @: s                return getActivity();
3 A7 N6 h! o3 j9 F# D) h        }
" R2 |! @& r7 T4 L6 s
! D4 a1 d, ]6 }" S        public static void main(String[] args) {
) c# g& C" d& A" E- U' u, V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 l' F9 Q6 c* e+ I9 ]2 m0 d0 Z7 c
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 z( a) I1 T2 S! p" b+ \* G                swarms.buildObjects();3 X* a! V: n/ F2 ^- D" U1 N8 |
                swarms.buildActions();1 q3 L  D# }8 D$ o8 B
                swarms.activateIn(null).run();
2 m, u1 }1 `0 d& c! V        }! i6 x5 ]0 J3 K- i  h

* `0 I, }1 w7 x; c; t. Z+ r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-30 12:41 , Processed in 0.023208 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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