设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12244|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % i: Z% s. R0 a! A* K9 L0 @* G

  D+ a# r7 W, \8 o8 d& H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ T5 C! M' C) O3 o. P7 a% }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  H; j; Q( i: {/ Q
swarm.SignatureNotFoundException. h! E( y4 b: m2 k& \
        at swarm.Selector.<init>(Selector.java:76)6 Q: [/ P5 ?9 t7 I4 z, O! N1 E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ `4 B4 `1 I8 v1 l, I9 z& w        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 P, Q) E- p# K- C
% s+ x$ @+ v1 R; x* `
# c1 C& |$ h) V# G* ]  ~9 Uimport swarm.objectbase.SwarmImpl;0 w7 |$ P. G+ R* U
import swarm.objectbase.Swarm;
! r, U' @; p$ x% e5 F% N7 ximport swarm.activity.ScheduleImpl;7 k9 s5 [' a' y3 G/ N6 ?
import swarm.activity.Activity;2 L3 a1 J% P* J. W: s& K
import swarm.activity.ActionGroupImpl;* T8 W6 S- z# S9 T3 A/ [
import swarm.collections.ListImpl;- l5 B7 A3 {5 i0 [  ]
import swarm.defobj.Zone; - {+ F/ Q: h) X$ u
import swarm.Globals;6 C0 M* n, m, a! f2 G8 U* v
import swarm.Selector;  t( k) O+ T3 C! v  U8 e
import swarm.activity.ActionGroup; 0 M  S4 h6 g! l( @3 W
class Agent {$ O6 q4 n9 J' F% n* R/ s
        char id;! z0 l6 k* v; _
6 g" o' m! c% @3 A
        Agent(char id) {
& M; U, [: N. u, A- d                this.id = id;
% T. v$ J5 Q" |# W; y/ _0 J4 \        }
. @  D  o# Z  Z0 M3 W
$ k! a5 `/ z7 ]5 Y        public void agentStep() {, _3 M8 o  i3 g" t0 K4 T8 a: Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 D/ _2 n# m; Q! X3 j0 \9 h, r        }0 U7 q( S1 ?1 Y: ~4 I: ]
}
! ^+ E# J; }' v8 H
1 r) N5 ~! g4 ]/ ^* P" m0 Kpublic class ActionGroupDemo extends SwarmImpl {4 w/ p1 O0 c$ S% b6 b4 F' g
        ScheduleImpl schedule;9 o4 k* N8 m/ K+ q9 l
        ActionGroupImpl actionGroup;$ |0 g3 [# B6 P7 A/ I8 c
        ListImpl list;9 R4 \7 e% W1 m5 g3 W/ T2 T. A' I9 W
        char Id = 'a';
% D0 z- Y  k' }1 p. \. [
. t* ~" @( |% h3 b/ _; R2 ~; _# q& ?        ActionGroupDemo(Zone aZone) {
" k) x* {+ b8 F% I0 `; U                super(aZone);8 ?; t% M- m! G" x  |% a
                list = new ListImpl(aZone);
4 ?! V& G  H& \9 U1 i) j: c                swarmSetp();+ M8 w; J. A  ~$ L8 k! [. j5 _% V
                actionGroup = new ActionGroupImpl(aZone);6 Q0 p0 v1 v0 L7 f9 e/ s
                schedule = new ScheduleImpl(aZone);. r9 u/ V$ x' x% k' E
                try {
) b% v( G2 Z- ~1 [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ f* v$ N( _5 D4 w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! s+ T# ~: X+ W9 g5 p' H( e6 ~# b3 w                        7 V" l' K! S) `0 I
                        actionGroup.createActionForEach$message(list, agentSel);
% ^" h* L% x# M4 s7 }' n. |2 q2 A                        actionGroup.createActionTo$message(this, swarmSel);+ H  {2 b& P$ Z9 }4 l+ n( _
                        schedule.at$createAction(0, actionGroup);
) o% e0 O+ }: R% J                        schedule.at$createAction(1, actionGroup);! A+ g/ J! F6 E( ]
                        schedule.at$createAction(2, actionGroup);+ R: p5 N/ |- s* e0 H; w
+ ?* E! O# v9 ^
                } catch (Exception e) {  X' ~  w8 V9 J
                        e.printStackTrace(System.err);
) j$ [1 l3 G( {4 z4 b                        //System.out.println(e);
% M7 B; |+ q2 |7 G; ?2 h                        System.exit(1);6 h0 R2 I  U# A8 \8 Y
                }
( Y; C# G  _5 H. W% {# x7 g9 a: W  T3 j" F

9 f$ M5 {& B3 n: u        }# X% w3 H3 X% y3 R
$ N0 b  N1 ?7 ?" q2 D
        private void swarmSetp() {
6 u' J  p( r. ^$ f" X3 R                list.addLast(new Agent(Id));( F8 O" W( ~0 }- K2 E( O& }! f* K
                Id++;
) I% A5 N! n- ~/ y5 R        }% ^1 M" h; G3 h; K2 E3 I

7 M6 _* J* x; F, V4 N6 T2 I        public Activity activateIn(Swarm context) {' e' N* W4 z8 y. @6 Y: P
                super.activateIn(context);
( s1 X" O3 e% m. g! r7 {9 n# \1 l' U                schedule.activateIn(this);3 T5 c4 p4 S& S
                return getActivity();
0 k! @- ^7 B+ W        }8 T. V" t& v6 w6 b4 b- _

) _" W- B" F7 `5 x- O. o- ?0 V        public static void main(String[] args) {1 Q" x& h" v5 Z. A5 D0 D+ E
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 |. c4 k& X% X  J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- V0 X% S' u. K1 ?                swarms.buildObjects();
. i$ B! t. }4 J                swarms.buildActions();8 C; k# j% k4 ?6 _: h  U, L; D8 S
                swarms.activateIn(null).run();- ~" Q! C( J- O" r( w
        }- m' M9 ?/ I1 w; O4 X; S6 j& c! x5 `

  q) N: W  ~2 R. b$ P7 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-3 06:59 , Processed in 0.017578 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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