设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7984|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * ]9 d% N/ D' Y
' S/ ]/ f- G# B3 T2 n( d$ m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% x' a! c; g4 Z6 a7 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; d1 j1 x' y. g6 `9 |$ n: ~
swarm.SignatureNotFoundException
( h, b5 i/ h& h& M, X# y        at swarm.Selector.<init>(Selector.java:76)5 g( t& m" [% x6 W& _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): f$ S7 _6 q% [+ Q1 r. b# g' X9 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( Z) K4 F' r9 ]  o) X1 ^/ v

) |$ V0 [& B2 ~0 L: U2 P  m4 o% }7 A! n$ h; _  N4 z2 x
import swarm.objectbase.SwarmImpl;
( r8 {6 C) X3 u. t: x0 limport swarm.objectbase.Swarm;) f" U2 f. B8 k' U# ], N8 @
import swarm.activity.ScheduleImpl;
, E! g9 ^) w. H) jimport swarm.activity.Activity;
9 P3 d8 X, g3 V* ^+ kimport swarm.activity.ActionGroupImpl;
2 F- f+ T+ h" l% G6 O6 Aimport swarm.collections.ListImpl;- ~* r& s8 I: I% ?
import swarm.defobj.Zone; # T9 ~/ C) ?1 J1 ^$ t% b
import swarm.Globals;, G3 \% A8 V! n7 C6 _+ D" ?5 J, z
import swarm.Selector;
& U; K: u5 f& B' Jimport swarm.activity.ActionGroup;
7 f6 |. b5 {8 R5 A2 V- Hclass Agent {! b" |/ g. n; E: Q
        char id;: T# w/ v- y( Y, S" z9 ]

' {3 B8 J9 I' u1 L4 h        Agent(char id) {" j" W3 f5 Q% j/ t
                this.id = id;4 v( [7 q" S5 D1 L. J  x6 d8 B
        }
/ U; E1 u5 w4 t% w' a+ @  V4 ^; Q7 ?# N4 |  k. [  q1 y
        public void agentStep() {
, F/ z4 @, o# ?! m) p                System.out.println(id + ":" + Globals.env.getCurrentTime());6 g7 g7 H* @7 q% I. N4 u1 F
        }$ t9 R- v( v- z6 h
}
- G- x$ S, }; F( R5 i0 x" y( S( O* @8 h' i/ g0 O
public class ActionGroupDemo extends SwarmImpl {$ j. d/ l" f+ U( e! z% _* ~
        ScheduleImpl schedule;
/ b' Z2 i% D$ ?) ?. ^* F        ActionGroupImpl actionGroup;
8 c0 [2 T- D9 A: w3 ]/ L        ListImpl list;
; d! P5 p9 ^& W- s; T: A$ e        char Id = 'a';8 y& [/ d6 X& D# I/ T- F

0 s" g3 t+ j" ]$ D        ActionGroupDemo(Zone aZone) {( p6 e) h5 _  I" Z/ e4 N
                super(aZone);
% y. ]; K3 d/ j  a) o4 l                list = new ListImpl(aZone);
  r0 H& A; X7 H4 k' v3 E                swarmSetp();3 @3 ^3 h6 V5 @
                actionGroup = new ActionGroupImpl(aZone);
4 Z* X* Z  ?) C, o8 e                schedule = new ScheduleImpl(aZone);" s: J3 T% W6 [0 A3 [1 m/ I. D1 I
                try {
6 }$ O% h# e: o  R: s$ J( l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 C0 ]- @0 `5 A; s4 K+ \3 ~
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 i* e/ y9 r- d- v& H% Q, D5 ]
                        
- K/ M. r$ K4 O0 v! D0 S; N                        actionGroup.createActionForEach$message(list, agentSel);; |% G3 @# v% ~/ b  }% L
                        actionGroup.createActionTo$message(this, swarmSel);+ K8 @$ q6 C& T7 P# o) q8 w5 ]& N
                        schedule.at$createAction(0, actionGroup);/ q: N: c/ `. f! F5 ?; p
                        schedule.at$createAction(1, actionGroup);1 Q! P* u: Z: M% c; F
                        schedule.at$createAction(2, actionGroup);5 h0 G( y/ g& o: n  G* y
2 `& W2 p7 f. `8 [
                } catch (Exception e) {
8 x9 n! ~8 E8 z% n, B' @8 j                        e.printStackTrace(System.err);
0 ]/ x+ q( g+ u3 T8 O                        //System.out.println(e);
5 n' Y3 {  f/ D% p' I2 }                        System.exit(1);
  E' T  X* X9 O  m9 ^3 k* @                }5 o% Q0 @4 R* l( q
  E4 x1 w4 E$ ?# ?" Y
+ {. Y! X% f1 e0 q8 C0 a3 `
        }
" O, P1 ?1 C* k1 [- x- D; k
4 u6 S. I, H1 ], ?0 [9 }        private void swarmSetp() {
- V- l/ o* c6 r+ A5 M! w& {                list.addLast(new Agent(Id));
& @( y* g' n$ b9 t                Id++;
, q( y4 ]- S& ?6 V        }
4 v+ c3 d0 _) u$ }( D2 {5 k* U1 y  l& O: ?9 b* L
        public Activity activateIn(Swarm context) {
! O1 d, S$ @+ z- V                super.activateIn(context);* [5 ?- f0 _" t# J2 G* e( U
                schedule.activateIn(this);
4 e1 a+ D  c, O9 }& m                return getActivity();6 N  g# E2 c9 S+ ?! Y+ z7 k
        }
8 D+ h% @+ j4 L. g- ?( H3 R3 ~( t9 v) |0 T# a. F" R& x1 @* g
        public static void main(String[] args) {
; Q- L- J/ |% d6 ]) @/ A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 h: H( i7 j( w- a/ A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) t; \% C: f4 Z; R4 ~4 |  m+ O) v9 g
                swarms.buildObjects();2 H, }9 z5 P6 j2 k6 D8 l
                swarms.buildActions();
; F: Y, ~: s$ q' [! {0 H3 [                swarms.activateIn(null).run();
% i7 L/ J9 Z9 ~/ l        }$ Y2 P) n- N9 H5 h# h2 R

4 [& e- e+ B5 ]4 e9 V! X6 |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-25 19:04 , Processed in 0.023513 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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