设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5049|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " _3 ?& y! r  C* ?6 j8 S2 C& ~
3 B  M; ?  q+ \% e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, h) L. |! }/ D9 {5 p7 E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- X5 ?& y$ r/ k" O" A
swarm.SignatureNotFoundException
( I; t4 A0 j% |6 H& e        at swarm.Selector.<init>(Selector.java:76)
, q' q" P4 d1 d0 @        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), v1 I4 ^0 l9 U' I
        at ActionGroupDemo.main(ActionGroupDemo.java:67); I5 y, h" l$ ?& k4 Y7 c# B# {/ F
0 K6 M% U9 T( i: L) p$ X3 ]+ ^) q. R
. f/ D0 T- `4 |
import swarm.objectbase.SwarmImpl;  i5 `/ X5 H4 P. k
import swarm.objectbase.Swarm;
/ g; K. \9 T( h4 \/ u, t' I) Y; Ximport swarm.activity.ScheduleImpl;
( \' N1 M" s# |9 }$ J4 T- q4 f" aimport swarm.activity.Activity;! g% ~2 G2 A3 o" J& u6 E$ V! C" Z
import swarm.activity.ActionGroupImpl;6 b' _2 t% g/ p: c8 n; T
import swarm.collections.ListImpl;% e. e) a- b4 B: R' G+ h
import swarm.defobj.Zone; 2 e1 D! y; }8 M8 e& G" i  Y) Y6 g
import swarm.Globals;3 {/ ~9 C' y: H" @
import swarm.Selector;
5 x& y+ ?7 o( @& X$ I: aimport swarm.activity.ActionGroup;
3 U6 D7 ]5 `1 U- c; i4 Kclass Agent {
# d0 S+ r1 A) l# Y9 E( ^3 V  v* k        char id;
2 Q7 o# y' W: z8 g2 J
1 R1 `+ J9 v) W4 Y* u8 H        Agent(char id) {& M: B* w$ x8 k7 K( [" \8 E" B
                this.id = id;4 ?9 b4 I; s) C$ X7 S. S2 |
        }/ f) o6 S) i  q# h6 [7 U
( h5 G- z1 U  U
        public void agentStep() {
5 s2 a. [) A) K5 a                System.out.println(id + ":" + Globals.env.getCurrentTime());4 q" h% m& L5 C! H& L* J3 [/ h% f
        }
# o' d- P" ^, o: V+ u1 U}
9 L: u7 b, q, [+ ~1 d: P
) N1 i( T& Y2 q: w8 p+ s( K& ?public class ActionGroupDemo extends SwarmImpl {+ X$ W% ^/ a2 K0 X; `  J
        ScheduleImpl schedule;' b# s9 }6 P& r+ a6 I
        ActionGroupImpl actionGroup;* P2 Y% {/ ^4 v, h) O3 r" N3 i
        ListImpl list;
3 p/ M6 `; N7 k* B$ h        char Id = 'a';
8 b% O& v- U* }7 r5 ~
: X! Z$ S3 s9 G$ `        ActionGroupDemo(Zone aZone) {
9 \/ }# M9 r# L. \% o                super(aZone);: P3 S# y8 q- E" d2 z; i
                list = new ListImpl(aZone);
2 \3 C+ ]+ f2 f' N% }: M# ?                swarmSetp();* U' q- W/ o5 h) v/ }0 c
                actionGroup = new ActionGroupImpl(aZone);$ c" ]* m! u: `4 l' A7 }! v
                schedule = new ScheduleImpl(aZone);) R8 o8 v, T6 S2 S4 H* r
                try {4 o; c% ~$ s9 b, \- p- W7 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& i: \* f6 |+ s( N3 L/ R2 `" H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* i$ Y+ r: ?8 \) h2 P0 `
                        
& u8 D6 z1 ~1 y$ h7 l# o                        actionGroup.createActionForEach$message(list, agentSel);* U5 O" O' r+ {! @, ]& |- d
                        actionGroup.createActionTo$message(this, swarmSel);
0 U2 v$ M1 y. c$ R. F5 R9 B( \                        schedule.at$createAction(0, actionGroup);) Z! n9 v# T3 P: v0 G& q% H
                        schedule.at$createAction(1, actionGroup);
( ~# ], P0 C& m* G8 x5 q                        schedule.at$createAction(2, actionGroup);
# Y$ h1 O( S+ `- l" s) x0 E# F8 q* ?
# G' T- \$ f" l. x8 P/ k                } catch (Exception e) {6 A$ C" [5 h* ?' C4 P
                        e.printStackTrace(System.err);- @$ p! w/ P0 F4 l% T- t4 {
                        //System.out.println(e);4 B0 D1 G8 a% y% s  v+ w* _% W* r: {
                        System.exit(1);
: h' d  ^" G1 v- Y                }
+ d9 i5 I& j" T, r# \* S3 V* e: C
6 C' x( x+ F; i. `5 \
* m" H# t  U; h( C6 ^( h6 i        }
6 R  s4 F. s) ]! W# [* O& R) A
8 {- w6 k6 D& L        private void swarmSetp() {4 g( E! v, q, K- A2 K* L4 u% ]
                list.addLast(new Agent(Id));, g9 e9 s" N& ]& M* I1 O
                Id++;/ _; e* K3 I6 @8 R* ]+ w0 L; ]
        }4 S2 _; K4 T' D4 K
0 i0 U8 Y2 L6 ^; }# T, p
        public Activity activateIn(Swarm context) {1 S! B+ t/ N8 \( T. q
                super.activateIn(context);/ F) J$ D- _7 m1 H
                schedule.activateIn(this);  X) M0 b. I2 E- x
                return getActivity();
* e8 x- [$ R/ e, \+ j9 p3 n, i5 m, Q        }
# P# _1 c* H" S1 a( {7 D" ~) B, Y  C7 h1 D, M$ C5 J- F6 O. l) B
        public static void main(String[] args) {8 z# [1 W  c) P: ?
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; F7 W- I  I0 Z( z+ z+ @3 o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( V6 q# L, H0 y6 B! y, ?  B
                swarms.buildObjects();2 N7 |! Q. h3 q; {' {
                swarms.buildActions();! }; Y8 ?3 T6 u4 S7 C' K' n/ _
                swarms.activateIn(null).run();: ^$ v: Z3 w; f0 a4 `* _1 o
        }
/ k% P+ K! C9 T& L* g& B! X8 y# z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-23 03:59 , Processed in 0.023472 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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