设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13404|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. y2 x: Q6 n  O: N
7 U$ }. N) u$ C9 ^5 Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 Q! T/ G0 j: b' {/ Y- l) p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 B4 m/ q( j/ g3 ~: u% w; M
swarm.SignatureNotFoundException
9 E3 t% j: }9 V! c0 r! @8 o# D        at swarm.Selector.<init>(Selector.java:76)
: o% O1 a0 [7 e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 R0 }" F: S/ P) c- o" Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. ~  W) B) ?. l8 H9 S/ k0 S  y# R/ P- R5 J5 P# j% m
) _$ W% r; `) P7 v7 E
import swarm.objectbase.SwarmImpl;
, l9 s5 L6 ~8 K- b; o# Z/ e7 }* @import swarm.objectbase.Swarm;
, w: K0 ?" f. ]! eimport swarm.activity.ScheduleImpl;( e, P* h. l% f# f7 h9 z  S3 c
import swarm.activity.Activity;
, t: T- x* n3 b  c4 Rimport swarm.activity.ActionGroupImpl;
; ~+ q0 R$ Q7 n! ?1 fimport swarm.collections.ListImpl;1 p$ L6 Y5 X' D# D  o& }( r# a
import swarm.defobj.Zone; 8 p  ~5 `, U! }9 |0 v( E
import swarm.Globals;$ n+ X8 W4 [7 [9 P
import swarm.Selector;
: m" g* X# F0 L7 F5 bimport swarm.activity.ActionGroup;
  H8 F& d" I( ~# F) T2 v" aclass Agent {3 j6 L0 ]$ j- E% y, W
        char id;2 L9 Q  m8 A5 H2 c1 F
) U3 C8 G5 Q% H6 |1 d. L
        Agent(char id) {% ?% q; g2 n) h4 @: d6 [
                this.id = id;. P$ W3 f# t5 y& y4 B0 e  X/ v6 B
        }
0 F. ]' K& U( r( W; [+ K# g6 c3 U6 S0 P# e/ [1 I
        public void agentStep() {6 F/ ?8 ?' Y0 k" K0 ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());- O. S" D( d& i; u7 B! [& E# M
        }
5 z- n( c. }( F( M6 O}
0 C! g! H; J, v5 t  b( U8 \6 F$ \6 o# F  C
public class ActionGroupDemo extends SwarmImpl {' I: J1 ~# L# L* L+ y
        ScheduleImpl schedule;
: [& o( Z% ~1 B! p# {        ActionGroupImpl actionGroup;
; F& c. a! T3 P( o        ListImpl list;% }  Y+ j" G* c  V* z( Z# v1 x
        char Id = 'a';
9 L- k8 }* t; t
( x% L, X* Q: P! n/ g! U        ActionGroupDemo(Zone aZone) {
5 C. f1 L0 y2 G                super(aZone);& {0 e6 \7 i0 B3 B. i
                list = new ListImpl(aZone);9 ~4 [9 p; N2 |
                swarmSetp();
/ o( T, ]1 ~( S' i+ {$ S                actionGroup = new ActionGroupImpl(aZone);
3 r6 Q3 ]: l$ ?                schedule = new ScheduleImpl(aZone);
7 p5 q9 F4 ?, g3 f+ q" _4 E                try {
) w9 d2 S9 u3 A3 w2 U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ w+ E! Q' v; g0 O                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( r+ s+ ~! U3 N! J                        
5 o$ C& F( e; Q6 V                        actionGroup.createActionForEach$message(list, agentSel);  ]" z. u9 U( w+ X/ Z4 z' M
                        actionGroup.createActionTo$message(this, swarmSel);) n- S( a  i( D1 P: ^) \* u
                        schedule.at$createAction(0, actionGroup);* {' g. [% o- n7 @, ^. g
                        schedule.at$createAction(1, actionGroup);
1 M( S# a' s) X! }4 Y% ]3 h1 h0 _                        schedule.at$createAction(2, actionGroup);" O; ~4 a  n0 W
+ U3 V8 W. l* ]9 J( o
                } catch (Exception e) {5 o% _+ q1 g# B; S
                        e.printStackTrace(System.err);9 v. ]5 @0 T! a: \; \
                        //System.out.println(e);% Y7 e) A9 |" `( g; d
                        System.exit(1);( Y9 j' ~' y0 x- o/ O9 K* y
                }
  O& j5 F5 M# P, W: W2 h" g9 u7 t. Y& j1 D' K$ b4 S# z3 r

5 k, b5 |* B! \' u( k+ ]        }' u7 ^7 x! K; B% K0 l' B

: H$ h6 i3 h) Y. {3 `        private void swarmSetp() {# i) a& ~' r  G8 H2 g4 [: L! I
                list.addLast(new Agent(Id));
5 W" b4 c( D  e7 Z                Id++;7 c/ j% o, X% P
        }$ P( \/ A- j: ^

. }, x, q) i; X: O, R" O        public Activity activateIn(Swarm context) {
5 _7 }- V& }2 K# V# |                super.activateIn(context);
. E" q) }1 i* n0 l* o                schedule.activateIn(this);# ?2 `5 L4 |0 M3 M  n7 E
                return getActivity();
2 `* f( t! p" f        }
6 k4 R5 A2 |% T0 N/ a: c( U5 A2 Q  w$ O! Y6 D- N; M
        public static void main(String[] args) {
2 A6 f; x1 Z3 X8 U6 S& Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  G$ Y7 M8 ?$ e
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% o+ Y4 n/ A- C# i: o6 b. a                swarms.buildObjects();! X. n$ e8 u8 g8 r7 n7 q
                swarms.buildActions();, @4 J/ p/ Y! x) G" B9 w* ^  O/ j
                swarms.activateIn(null).run();% w9 r8 k$ P! h' _
        }
8 T) ]" `3 j  e4 O
0 l* G& S. C8 a" v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-6 05:08 , Processed in 0.015712 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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