设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7797|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" t# ?, g( |4 P9 O
8 q( y5 E2 F& M' s7 P3 G$ G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ G% B- H# l3 z4 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ b$ ^5 ?3 J0 Nswarm.SignatureNotFoundException
# _, C$ A- S1 {: `% s        at swarm.Selector.<init>(Selector.java:76): h5 k7 n, @& h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: @2 j9 }( p; p" j- D" ?; z        at ActionGroupDemo.main(ActionGroupDemo.java:67)( ~  w5 b# ?4 c1 ~4 q- g' W

( v0 X5 Q5 j7 G2 c9 _9 Y5 \0 f" o( I2 ?; c0 Z0 w
import swarm.objectbase.SwarmImpl;. U+ H+ h  m' y4 m! |/ N
import swarm.objectbase.Swarm;  d3 E; V) }' F
import swarm.activity.ScheduleImpl;
3 Z, @# O& v/ P" @, y2 I" j) `import swarm.activity.Activity;6 W! ?  T3 z7 s- C- v
import swarm.activity.ActionGroupImpl;: F' {4 t, Q6 }( e8 Q+ X3 Q7 V) y
import swarm.collections.ListImpl;- u& |! }% S2 \& y$ P
import swarm.defobj.Zone; - c7 N" t: p7 ^8 f
import swarm.Globals;* d) K$ K5 J' [' A
import swarm.Selector;4 O. O2 r: c/ \$ @9 S& S  p
import swarm.activity.ActionGroup;
3 |# B/ E+ Y; ~7 k* \class Agent {
6 x8 H4 t; I/ J        char id;
7 P& h7 o  A) T8 Y5 Q, Z, [  A2 R$ W2 g. L  D
        Agent(char id) {# i' J4 `$ e/ R- f
                this.id = id;
& I2 s# F8 K4 z* [- Q* O        }2 o. b, U0 Z" ]) g) H

4 F8 r1 H  A0 i# K% c: l        public void agentStep() {
  u& L' m0 a7 x7 _: I) i! r+ X                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 t8 a6 U4 Y0 V0 N$ c        }  ^3 _4 b, ]& A% U0 w3 }: C# O
}
- N/ j2 I, T9 g* \
% g  s0 @3 ?  D3 q/ V  kpublic class ActionGroupDemo extends SwarmImpl {8 O: f+ z" n4 z- Q5 R. w
        ScheduleImpl schedule;
- c9 b1 ~. F% \        ActionGroupImpl actionGroup;
# _0 [. r8 v$ j" |+ o        ListImpl list;- P' K# n- y$ O- v+ n% k% V) R
        char Id = 'a';  l% Z1 @- k! {) G% H
# c, D+ v6 ^% C
        ActionGroupDemo(Zone aZone) {- u% s" X4 i, w/ s2 j- ^3 T9 M+ S# t
                super(aZone);+ k$ l8 h' J/ J" H& c1 O) L9 Q! Q
                list = new ListImpl(aZone);! g0 H$ u7 Y3 p) e% C
                swarmSetp();
* Y- ^6 m2 x" J                actionGroup = new ActionGroupImpl(aZone);
# O. t$ Q( W' W                schedule = new ScheduleImpl(aZone);. j$ Y! i0 Q. j
                try {
% n  J8 I1 o% r9 t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) x9 A0 f' O* O5 u, r3 L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* r$ r' w. O9 K6 @- u9 I% o. P                        
& A5 x) V7 N3 y+ G  L5 x  ?4 `                        actionGroup.createActionForEach$message(list, agentSel);
5 @- T; F2 Y& }6 {                        actionGroup.createActionTo$message(this, swarmSel);
- O5 G& s; O4 v7 n: B; x                        schedule.at$createAction(0, actionGroup);, x! s' v' ~! ]$ O1 t
                        schedule.at$createAction(1, actionGroup);
# Q- x/ g- M; |) @  L8 k' f6 u                        schedule.at$createAction(2, actionGroup);# O5 G0 g4 F6 l! a# G

8 o5 J% g0 I/ |& R0 B( x# t                } catch (Exception e) {
  Z" |& v  c) i% w7 t+ I                        e.printStackTrace(System.err);3 l* J: a8 b0 S
                        //System.out.println(e);
  q. P- _$ n1 l+ a, C6 \                        System.exit(1);
$ F5 q9 J/ C; I$ A- h, a1 I                }
# i6 e& o, i/ q1 f' v# {& c" d( M$ t; d

: F0 o. v7 Q4 A9 m' R        }. U. ?' D7 C4 Y( F; @* c
! A1 R9 o$ O+ Q* S, j
        private void swarmSetp() {. C# L: I0 B$ F" F/ k, H
                list.addLast(new Agent(Id));
9 p, ^8 G- S, V                Id++;
+ ]% g( `* t' \" X; `        }$ {5 i% Y1 C" v9 @

( k8 \1 Q; v8 @/ s1 Z        public Activity activateIn(Swarm context) {& Y  ^3 X0 \7 u7 D: L( N
                super.activateIn(context);) A; Q3 X3 U# J( g- x
                schedule.activateIn(this);
1 Q. q/ w9 M( L0 S; e2 k2 f                return getActivity();
: U+ o7 w! Z, i6 o  o1 [/ |        }* N( W; ]/ ^0 o  \7 [

' ^3 F$ o( q% I8 }7 K        public static void main(String[] args) {* I# e( z) I' J$ W% {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% O- B8 h( ~$ o! Y3 Y: N# |( E. t& }/ o+ U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# G. @. M: O# M- I( w7 e                swarms.buildObjects();
7 Y; D, y- y) x; M" F/ [8 h                swarms.buildActions();
- W: |  b1 H1 J                swarms.activateIn(null).run();' P/ M8 F# i$ I: v7 p
        }
, b$ x' O0 Y3 T) v! T  M
  ?' T0 b2 A& R! }4 \$ H# @% ?9 @) @}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-15 03:26 , Processed in 0.013554 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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