设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11539|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % Q% q: N  A$ j' X5 W9 p

$ x9 l. w, J8 p& z0 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( \! Y, C2 D) o2 k0 ^0 s4 @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: V% H/ z# z, \0 _- @6 Fswarm.SignatureNotFoundException( Q! M( F3 P; ~7 T( B/ e
        at swarm.Selector.<init>(Selector.java:76)5 F  y: W  l* F9 m6 _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: f* G) F' C- z1 \        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, G$ a8 i1 m2 k) w
6 k1 \$ c% G5 Q0 e4 w
5 Z% e' Y$ M. A3 `import swarm.objectbase.SwarmImpl;& n& L* O& Z0 `6 `- A# F2 |2 x
import swarm.objectbase.Swarm;
2 d6 F1 ~: [7 p: T1 cimport swarm.activity.ScheduleImpl;7 R, W0 v5 X0 \! O' U
import swarm.activity.Activity;* a+ A4 x2 g0 Y3 l5 n
import swarm.activity.ActionGroupImpl;: C/ S7 j& S( o! Q
import swarm.collections.ListImpl;
. y0 Y7 W/ n9 r6 j" }5 Cimport swarm.defobj.Zone; / w- v3 \6 X+ }
import swarm.Globals;: h7 g8 H; I: o1 v& _
import swarm.Selector;3 B4 U  f  X* \0 G: ]
import swarm.activity.ActionGroup;
' r# I7 w- f& ^3 Iclass Agent {
5 P# D$ w* c- D( I        char id;
% ~; l1 ]  ]$ A' Q1 |3 _& f
2 d: S, G; l1 C6 ]$ y. v        Agent(char id) {  e; f, q9 H5 c* m
                this.id = id;( C7 b- n3 ]8 O% L$ E# @
        }0 G% Q8 f3 j- a9 K/ Q8 h+ D

/ h/ ^% |- M0 ^+ U7 C' V/ I' ^        public void agentStep() {
4 j6 P; X" n7 j% o! S$ q( C9 c                System.out.println(id + ":" + Globals.env.getCurrentTime());
, g* M8 r: z4 H, _% a" x( J        }
0 y9 e* n9 C- ^4 d# m: \% M}
" n' {+ ?1 w8 c4 }  p* _% v7 F
, U, i! |) u  K3 Jpublic class ActionGroupDemo extends SwarmImpl {/ r+ e" b/ K$ j; A5 |8 Z8 ~
        ScheduleImpl schedule;
" O8 ~8 u. D# c; U5 M6 H& y  [8 L        ActionGroupImpl actionGroup;& v5 U+ G1 Q$ r# f* O; e" B
        ListImpl list;
8 |, `" _7 }5 K! G8 l( O        char Id = 'a';
. K9 s. h6 _/ u8 L: v3 [
/ d7 q( {4 w( {8 }, p3 o        ActionGroupDemo(Zone aZone) {4 t; j" {2 E! U. u/ i& w3 a" ]( C
                super(aZone);. [% r) t' C* d) D0 ?# ?
                list = new ListImpl(aZone);9 T  V2 g  i% N
                swarmSetp();
' y' z8 \- M* \& }: J) L* Y                actionGroup = new ActionGroupImpl(aZone);. [/ E( o% g+ \/ y! f# a$ R
                schedule = new ScheduleImpl(aZone);
6 ]$ b  c4 r6 G" b) u. l) d. M/ r                try {
- O% i) |: E' ]: j8 Z" G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: j7 e* U+ h6 n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) w+ ?7 q. a; p( n! a  a7 O; U
                        
7 {0 v) F5 u" E$ J* w/ A& o                        actionGroup.createActionForEach$message(list, agentSel);
3 _/ Y' D% u) ^% G% t; S2 e0 j                        actionGroup.createActionTo$message(this, swarmSel);$ f, E6 I2 {7 G$ a' I* i
                        schedule.at$createAction(0, actionGroup);8 X* x% d' K- ~2 I. K
                        schedule.at$createAction(1, actionGroup);
7 W# T$ A4 ^, _3 C9 ]% N                        schedule.at$createAction(2, actionGroup);8 ]# T' t) h" H! M* f# ^3 {

* O, \% r9 L$ R0 k/ b# \% m                } catch (Exception e) {$ {% Q7 Q" J7 i
                        e.printStackTrace(System.err);( _" q$ Q; H6 C) u5 A) c, M
                        //System.out.println(e);
6 ]7 P& r4 {5 @; t# N4 W                        System.exit(1);
  t2 F1 h& H) i                }6 Q9 \* {3 U( F* }

" F, Z5 M) a* x: Y, k
- }2 x) r4 B. t, e* [        }) e% J0 h: P9 X! z  F$ Z

  S6 M: k& t9 |5 f; K- ~1 ~# t: S        private void swarmSetp() {
9 Y9 P, ~& b( H* ?7 \                list.addLast(new Agent(Id));
; p5 P1 c6 Z; v% W  V                Id++;# j( f5 Z: v& D3 [& Q1 X
        }
" Z7 u/ j. h/ \" Q$ z- J. O$ @0 X& M( j/ q: x( ~7 Z' L
        public Activity activateIn(Swarm context) {
* P" h1 a- h. h; V9 n8 B                super.activateIn(context);
9 W  N' x/ X  m# K                schedule.activateIn(this);! L9 }& b0 @: P7 q
                return getActivity();
4 O: v# D! w! J0 U! c4 g* \  J        }0 z) k5 A- l) E  Z# w" Z- U4 m

4 I" O# X" a9 Q5 G% ^        public static void main(String[] args) {6 K8 K3 ]! y# e8 i1 e! K
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ A1 ~. n' [+ F4 `% }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. g8 w3 ~: W" H/ h  |
                swarms.buildObjects();
5 k, N: S7 Y4 O! t; ?                swarms.buildActions();
9 ^' a% [1 a- y7 Y& i+ T% G                swarms.activateIn(null).run();% V$ p1 M& T# W
        }
$ }" _' d2 l. s  }- ]* s/ B7 l, f
3 U# ?% ]2 X- K7 n}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-15 10:30 , Processed in 0.014815 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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