设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9612|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- {# }2 k% Q, \9 `( H
7 g8 U2 c! I* P! P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 ~; E) P, [( f$ O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  [( K! ]7 C+ C& r' Kswarm.SignatureNotFoundException
  U3 ~" ^+ s2 S" Y6 j        at swarm.Selector.<init>(Selector.java:76)
- W5 p8 S( A" x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), I5 I/ u6 j8 u0 e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 n& u2 ~( T0 R$ }: B
' }! w, E* J! C  \: `2 E2 M% q) e0 E% e1 C# H, n
import swarm.objectbase.SwarmImpl;
  Y: c7 Z: K- h1 C- J5 Jimport swarm.objectbase.Swarm;( b. e4 \" @% [; g
import swarm.activity.ScheduleImpl;$ f6 z! F1 M2 b6 b
import swarm.activity.Activity;
' m! m% P( y) ]3 B# W7 Timport swarm.activity.ActionGroupImpl;
( D, Y, N/ m3 @% M' Uimport swarm.collections.ListImpl;
+ x! k3 G/ p2 `( m; K% W# Fimport swarm.defobj.Zone;
: w; k( q; S$ `; ]  P( N1 Himport swarm.Globals;( S6 ?  u# D6 m
import swarm.Selector;: R6 t! E) s5 v5 s
import swarm.activity.ActionGroup;   T- F; t5 \) N" K# x3 t1 R
class Agent {
- N5 j  y0 ^8 ^6 m5 @: l$ [        char id;
% @# D. p* l7 F; s
; T6 x2 W0 V- L1 L        Agent(char id) {
) X& ^9 e: f0 t; L* k9 t% e0 p                this.id = id;# {- u) w. k% W# c8 ?; b4 ^/ a
        }: K' Y& l) s, {# W- z& Q. Z

2 U* V- K4 I! k) b6 F        public void agentStep() {9 z2 ?3 ]6 e9 a0 t+ v* b% {
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# s% ^  |7 l7 g. t- }  {        }8 Y$ I( N  \/ X! D0 t% W
}: E+ j- ?# F( c- N! N! @
: j9 K7 e6 E. Y! E/ i: ]. a( B
public class ActionGroupDemo extends SwarmImpl {8 I2 e7 X" i3 I7 c
        ScheduleImpl schedule;- M9 v0 d: U; d- n
        ActionGroupImpl actionGroup;
, v1 q# d1 w2 b3 q# Q* ?        ListImpl list;' [; K& J0 W. Q6 g7 T9 r
        char Id = 'a';0 E" g; g7 c: G& P3 b0 ~
$ J8 F. J: Z( Z5 f: E4 m. j1 J0 o7 T$ U
        ActionGroupDemo(Zone aZone) {: z: E8 J: g: l& N% n% s
                super(aZone);9 `! G' L# q. v
                list = new ListImpl(aZone);. ^2 l0 Q; f  |' H1 v
                swarmSetp();
; o$ p' t6 Q: q' ^                actionGroup = new ActionGroupImpl(aZone);0 w: ^" a8 f2 r5 t$ [/ {2 T
                schedule = new ScheduleImpl(aZone);
$ w+ F- G2 g% }                try {
& V* o7 |: L" P1 a. U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( U2 I* \5 j' Y! M
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 p6 Y- ?' {& `$ k- B2 U- w& @
                        
: u1 \8 `: U0 g1 `                        actionGroup.createActionForEach$message(list, agentSel);& o, Y. T1 O2 g. e7 b# D) h* k
                        actionGroup.createActionTo$message(this, swarmSel);3 L! A3 H4 V2 ?* G
                        schedule.at$createAction(0, actionGroup);
% X* T. G! r; @$ Q9 t. b                        schedule.at$createAction(1, actionGroup);
; W1 {3 c* e/ }9 G2 M                        schedule.at$createAction(2, actionGroup);/ T" R# w) r4 `
8 I. S' b( F" A2 q& g6 ~8 D
                } catch (Exception e) {
" a* g  G" t: f$ d: c9 ^                        e.printStackTrace(System.err);
$ A5 o) \$ ]4 Z                        //System.out.println(e);0 J( F) E) c7 u' z# K# |9 K' i9 H
                        System.exit(1);
) R' M0 {: t8 a7 u7 Q9 ?                }1 O& W0 g6 U! U6 X! n
  F( }/ ?6 X3 Y

, t; o7 y9 A" N0 q# a: Z5 t        }
6 p/ g3 k, n1 t' _+ `% O! q8 N4 ?0 s% m3 G: x& V9 d
        private void swarmSetp() {( E' P8 `6 f  T
                list.addLast(new Agent(Id));. O8 H# M  A+ ^- z* F$ {3 e: j
                Id++;
/ X" [9 o/ y6 p! x2 T8 K9 M        }/ X3 Q( ~: Q5 R# [3 U) ^- ^. K
+ x9 ^' ]" N: ?, e
        public Activity activateIn(Swarm context) {
9 e( k$ J5 j% p) J                super.activateIn(context);
5 f. z5 r3 z; w: R0 z                schedule.activateIn(this);2 q1 ?1 h. c6 \5 {9 G
                return getActivity();
0 |' W8 b0 I( O% J        }  `! s0 m$ z; `- f/ U
" _! g9 s1 H9 K% \) D
        public static void main(String[] args) {& `- |' X& x  h$ O! j' G
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- c0 z, T# H, H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- f$ s# `$ F  w! [2 H; R                swarms.buildObjects();3 _& b. V. W; U  F' f3 G% P* {
                swarms.buildActions();
8 q( j# C% {% K6 w: k                swarms.activateIn(null).run();# [# d* j2 _8 e' H
        }
0 C" S9 i( E: w, _" I6 o0 D: R. r2 |: D# W; O2 H# @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-16 22:28 , Processed in 0.017443 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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