设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9669|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 Z* B# h1 s- ?9 P8 ~7 O

' i$ Y0 D& y; A* c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 S9 G! ]. F, l; G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 D2 T3 J( |4 }! @1 N! P! S( H1 xswarm.SignatureNotFoundException
5 r6 R+ m- m, ?6 o7 q) X        at swarm.Selector.<init>(Selector.java:76)
, n& |+ }5 U% o% B8 |* h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 g8 k0 A$ v2 k/ V
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 e& V" J9 l- ?9 q# @' P5 ]9 @
0 K" S0 U2 w- L3 i
3 ?/ V# I, Z  n" u  x9 k8 B) y
import swarm.objectbase.SwarmImpl;
1 Z& o$ G- j3 k6 f7 H; t0 R. Y( Z% zimport swarm.objectbase.Swarm;
; `8 c" n- ]# w: a& J% [+ _2 Mimport swarm.activity.ScheduleImpl;4 a9 S" t/ J, H, D/ a
import swarm.activity.Activity;
8 ~6 \  c- k( fimport swarm.activity.ActionGroupImpl;- [( j; a" H+ f' k; a/ }5 t
import swarm.collections.ListImpl;& [+ K1 k! s" ~' R& U* G- y& G
import swarm.defobj.Zone; 8 t# }* n+ B2 ^# q" |  P; f
import swarm.Globals;- h' V4 p2 J5 Z) i. _3 I2 N1 _
import swarm.Selector;
# {. ]  {, N6 l( [9 s8 O( F$ m8 _$ }import swarm.activity.ActionGroup; % ^% Z. Y# K! ]
class Agent {
3 r3 {3 U3 B1 W+ ~        char id;
9 u- R$ M' J7 m7 M& v+ E
( n$ Z* u- z2 L2 Y1 \        Agent(char id) {1 B- T5 ^9 t1 T
                this.id = id;, t$ V! z; C0 A/ [0 e
        }
" S0 Q4 m; J9 g: a6 z! |
/ p. n- `- {5 K  M* X        public void agentStep() {
( P" n. V$ o, b; R( g/ J                System.out.println(id + ":" + Globals.env.getCurrentTime());
, b- K" ]. g# ^+ k, C( l# o( ]        }
2 m* f3 _. O1 ]/ Z8 }* Y' w4 |}2 }: ?' q/ [3 g4 ?& P# x

& [1 Z7 G" P& L1 I8 V7 ~. wpublic class ActionGroupDemo extends SwarmImpl {" c+ f6 l. D- t" b
        ScheduleImpl schedule;9 O% F: F8 M2 c! F6 R, I
        ActionGroupImpl actionGroup;% b- d' G! v& _% M! `) `2 ~1 p
        ListImpl list;
9 L* w% D3 U7 v! b4 ?! @; C        char Id = 'a';
8 z& b' g, v& b9 \$ [8 f8 E( A/ \; \0 N- |
        ActionGroupDemo(Zone aZone) {& }( U1 H$ F$ C) i
                super(aZone);" f, O+ Z( p; h1 V
                list = new ListImpl(aZone);  \. V4 |. _: }9 C* b+ x8 ]
                swarmSetp();7 `. j1 W0 Y0 }7 f9 F5 G0 G( u
                actionGroup = new ActionGroupImpl(aZone);4 a/ N( z% m, D# d* y" ^
                schedule = new ScheduleImpl(aZone);8 o8 L5 c" S7 `6 y( e4 ~8 [4 ]- A
                try {
6 A, e# U* I: c; \5 B& Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. G* Q/ i, _; P% ^! ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# r% {5 @% M: q& u                        
  P% w5 ?% ?) J, R                        actionGroup.createActionForEach$message(list, agentSel);
# i  `. N; j! O2 b* p                        actionGroup.createActionTo$message(this, swarmSel);4 B  b; t" o; C! ]$ ]4 l+ j' j
                        schedule.at$createAction(0, actionGroup);
) }7 O( W( z9 z                        schedule.at$createAction(1, actionGroup);
8 c" D; a, q4 ^; ~: p                        schedule.at$createAction(2, actionGroup);  D6 Q; U8 B" `0 E; P2 h# Y4 ~
0 |; A. o: ]* \( c6 B8 t& P
                } catch (Exception e) {  ^4 [8 C# T+ F7 w; J( @0 i/ o+ ]
                        e.printStackTrace(System.err);
1 O7 T! f7 l' j0 @8 Y5 z                        //System.out.println(e);
3 ^: {; x4 Y, V                        System.exit(1);8 Y' i# X! S! [
                }( m/ y# `; T  _
, s9 W' E+ W- e6 _8 G( h, h* t

1 g# t9 p1 l% m3 N0 I! X% i        }( D- |5 o  N6 z7 m/ x! X: N7 E

4 g8 U! z5 k% V; m  t" M9 h. @# n9 F        private void swarmSetp() {
. E0 X! j8 u, X6 [0 z! E                list.addLast(new Agent(Id));
, {" M0 \6 S: A7 c& i/ z! J                Id++;4 T0 s2 J  C8 C) \$ ^
        }4 H6 T9 j/ d0 Q2 m2 Y; H; p

$ U7 a' y6 q* I1 Z) h2 Z        public Activity activateIn(Swarm context) {
% f  a+ a5 s. S+ I5 e                super.activateIn(context);
" |% [' g, c' H+ q* W                schedule.activateIn(this);# ?1 H: t' o4 C0 E8 b, G
                return getActivity();; d1 |4 g/ w1 \9 l' P* p! D
        }
4 r2 P. P( I* d- o5 o* W( {4 s/ p1 i% O, n6 h. y, E; i
        public static void main(String[] args) {9 |* h  u& P8 A$ @8 [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' S% j( S# L) a& c# O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) W3 A' ^) {; F1 G
                swarms.buildObjects();
! ]9 M& n3 U4 @7 y/ v; Y                swarms.buildActions();2 E8 g0 h8 d% y* d
                swarms.activateIn(null).run();5 G- D9 Q6 \4 B1 {
        }' @2 ]" ?" X: M# A# z

8 F: O( E' ?' b7 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-18 22:55 , Processed in 0.020238 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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