设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5965|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 c$ B  S- H, P3 G
( Y& ^$ o+ S( x* d4 F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% K0 q2 E* Z. F+ c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. v; {) H- b" e% yswarm.SignatureNotFoundException( z- G7 ^: X- I0 ~! p% B
        at swarm.Selector.<init>(Selector.java:76)
( K1 B$ ?: P' ]3 G5 T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* [8 S* o( x9 U& ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' e: p" Q5 ^2 P  s

4 _: p9 R8 |0 @, D
" m9 T, w' U- c8 d1 f8 a, Iimport swarm.objectbase.SwarmImpl;8 g) v' m1 |( c! V6 w* H2 k* K
import swarm.objectbase.Swarm;
# k' o: K! P9 w; M% r3 X$ A9 I: jimport swarm.activity.ScheduleImpl;
' t' _+ O- P1 m  n: Fimport swarm.activity.Activity;
4 U+ S- [2 ^0 W: C5 |import swarm.activity.ActionGroupImpl;
6 l: P& U3 m- p/ Aimport swarm.collections.ListImpl;# l+ o: r2 F9 d6 X8 u
import swarm.defobj.Zone;
) g3 x: s  E  ~1 B; O& F' o% J" yimport swarm.Globals;7 E+ K! _) _" M2 [) S) M% s
import swarm.Selector;
& X; M4 j4 y. F1 s/ w: Nimport swarm.activity.ActionGroup; $ W7 h; i: C: c) g- S; F2 k) b
class Agent {( a4 N8 ^) p) R! z: W2 b$ B
        char id;
; D. Z' n$ ?$ [0 m% t/ B" [$ @7 R0 y/ J- w! J7 M& B
        Agent(char id) {) V% p# X) Q) E' K! X; g
                this.id = id;
$ d" \% Q7 Y8 Y- `6 U, Y% _        }
4 @% ^- G4 y8 G# ?* \4 c  S7 q* \5 r# R
        public void agentStep() {4 U8 G" x# i% N
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 M. F2 T, D! `& y+ ~
        }
' ]' B2 f; E- N. c/ T) X- I% x}
* Z$ l4 k2 g# `" g+ u( D% |/ m! Z: J2 F$ [( B) I  \
public class ActionGroupDemo extends SwarmImpl {
& Z3 m  S% p' B& k        ScheduleImpl schedule;
: [5 O0 S6 b. r: e        ActionGroupImpl actionGroup;5 d1 |1 l" I& q3 p' }0 Y
        ListImpl list;
/ b5 N& ^! V) R" L) S        char Id = 'a';
( q5 c$ x5 T2 [" H" U/ S+ |+ U: O( D, ?& g& }
        ActionGroupDemo(Zone aZone) {
: t" K3 o- Q. y7 O! F7 t; X+ I) M( Z                super(aZone);& k+ q- G3 [/ K0 i" m
                list = new ListImpl(aZone);3 Q4 m- N7 Y) ?1 `2 q) {8 C0 L# m
                swarmSetp();* B/ y+ z% k4 Q7 \& O% ^
                actionGroup = new ActionGroupImpl(aZone);0 ]2 w  r, Y* I: K5 k. |( I, ?
                schedule = new ScheduleImpl(aZone);( ?$ Z/ z! D" v# m" f9 i! ~
                try {* s# y6 D: e$ Z' ]# {
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 S+ }8 C1 I' Y+ f2 a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: r. o4 C* J! A2 i* `8 r                        
) G, Q0 |6 o4 \4 e5 J8 @+ O" L                        actionGroup.createActionForEach$message(list, agentSel);/ E3 y4 z2 N7 P/ H6 K6 s/ l$ [- R
                        actionGroup.createActionTo$message(this, swarmSel);/ ]* F: p) ?8 s4 ~9 a1 ?! W) L2 A
                        schedule.at$createAction(0, actionGroup);6 L+ e# d0 U9 c# J
                        schedule.at$createAction(1, actionGroup);. A& t; y1 c$ [3 U
                        schedule.at$createAction(2, actionGroup);% V# I5 Y' i  d$ S

0 Y* @$ K* R% S& {# A                } catch (Exception e) {2 K; K* p. k: X8 ?) ^
                        e.printStackTrace(System.err);3 B* M3 a: c1 T; E+ V0 D1 P
                        //System.out.println(e);
! D6 u9 Y/ i' m( g) M% R6 W                        System.exit(1);$ C$ d5 ^/ k1 ~
                }
* g. K& E/ ]/ K; M7 f5 k; U4 L# ?) A. s. p3 h$ f7 D, p
, h  S4 X9 k+ }% u
        }& s- W; |5 v* \" G" N' t

& n$ L* ], @  _; `5 Z3 p  j- N) q        private void swarmSetp() {
4 H( Q$ ?; [6 K4 r8 e                list.addLast(new Agent(Id));. e: e% ^! `+ g2 Y5 g) I
                Id++;
, {  k  T7 p3 ]8 P: W1 B  J        }* e0 G: X) I( q0 \$ a0 P9 E3 O

; y% g) H1 e, e        public Activity activateIn(Swarm context) {
  X" `7 c: K) c0 d3 Q% g+ _                super.activateIn(context);/ a( L  H: N2 a3 R3 Y1 q5 V1 c! ~; U
                schedule.activateIn(this);" G, |4 p# N) u: }1 j
                return getActivity();. e) \/ o8 o1 K& B
        }5 g2 B: P2 k5 E) Y
  y( X+ \$ v9 B! f; ?0 r, ?, N# r4 ?
        public static void main(String[] args) {
1 p- s& _+ X, K& p6 c3 D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  ?- o/ G. }- L7 O& z  o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 E+ C+ _4 [1 B' j& E
                swarms.buildObjects();
, t; o6 V& I) J8 J+ e8 {                swarms.buildActions();& r" E# U. H' ^: C; _, _4 O
                swarms.activateIn(null).run();; V& j0 a' H2 x3 b1 O0 ^
        }7 _& p* h, l% E1 Z# \3 K

( |' r& Y% I& y/ I  \; }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-12 10:18 , Processed in 0.019467 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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