设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7977|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! n: i- P& E+ S1 r2 o7 Q. e, N

0 }  J2 x) I( D- I! P6 `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 Y2 y6 S! T& }/ _$ B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% J- j# A' l9 C1 X5 a
swarm.SignatureNotFoundException' j+ }5 u1 n8 H
        at swarm.Selector.<init>(Selector.java:76)4 o+ L( i6 H* P. }% |+ Y% C$ i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 q3 [% a7 ~; J% K" e; Y+ C        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ E9 \. l9 \7 g' M0 e( Q

$ N7 P) G( Z- W4 P, L8 m8 C$ ?5 Z: i9 x3 M4 F' P
import swarm.objectbase.SwarmImpl;( [2 m7 U# J; ^  k% x( f; Y) d
import swarm.objectbase.Swarm;  E- k3 F9 v( {) V- q( h& C6 u5 V$ D
import swarm.activity.ScheduleImpl;5 @0 H! M! G8 k1 h" E  Q: T0 x
import swarm.activity.Activity;* c/ }7 Y! j; Y2 b1 k( _/ `
import swarm.activity.ActionGroupImpl;
$ _* R) h2 d0 Kimport swarm.collections.ListImpl;
: J% w! ]' a- C4 _import swarm.defobj.Zone; + J7 p3 g7 A6 m% ~# q( H* r
import swarm.Globals;7 s4 X7 c6 X7 F' v+ Z8 M# u
import swarm.Selector;( D- N+ }- U8 G; K+ e
import swarm.activity.ActionGroup;
! h- O6 p3 _) z0 oclass Agent {. ~  n- C9 \) d: s" {& r' R) S
        char id;
( ]: M2 |% V, o! Y/ V1 c# Z, n  f) I
        Agent(char id) {
$ ~% W4 G" Y) Z3 Q1 Q                this.id = id;# @: e* A* N. w9 h
        }
9 H+ s) ]3 w: a% Z7 _; F' q2 `3 i. Z- J6 [( \
        public void agentStep() {2 C  c6 C7 j3 K5 `; O
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 _$ N* A' N# ^% E
        }; T2 H9 Q2 S; q: l
}: s; F( O' Z' z3 q8 K" I8 [4 M. B
: i: v" \: v$ m. p. z  g
public class ActionGroupDemo extends SwarmImpl {
. z& f% H1 _9 O1 |0 q1 T        ScheduleImpl schedule;
. ^' |4 F* ^3 k+ S6 S        ActionGroupImpl actionGroup;
% o0 P+ x# }* _# [        ListImpl list;
/ v: p; C" k) J        char Id = 'a';
0 t8 \( d* J1 \8 H8 T- |: q  s' Q7 P/ y$ |5 O; O! u
        ActionGroupDemo(Zone aZone) {
( i) @3 c% t/ C. O, p                super(aZone);
9 T6 B, x" v) \1 B                list = new ListImpl(aZone);* o9 I8 c4 D$ J: |/ v
                swarmSetp();( i, J$ w' D+ e8 b0 D# `
                actionGroup = new ActionGroupImpl(aZone);. {+ W1 g9 S4 g; T- D1 @
                schedule = new ScheduleImpl(aZone);$ @- _8 P+ W% t$ w9 l% w
                try {
" B3 t& h9 ?. n# P8 e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( m$ y! Y4 G$ ]$ ]: P$ R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; L0 ^0 `) P6 m/ A                        
+ C' o- z1 ?6 t& \: W# W                        actionGroup.createActionForEach$message(list, agentSel);  \# R, o0 ]; |
                        actionGroup.createActionTo$message(this, swarmSel);+ ~4 U5 k8 u" O; X& ]% s3 k
                        schedule.at$createAction(0, actionGroup);
* S# j( G) X7 O$ |# S$ b8 Q                        schedule.at$createAction(1, actionGroup);3 @( B4 r; g" F1 T9 H
                        schedule.at$createAction(2, actionGroup);
$ a& O& O' u' p8 c. h" h
( F. g) z) {4 R$ n' i. K3 ]' E3 {$ \                } catch (Exception e) {8 ~' N$ A  S( d2 W( J1 }
                        e.printStackTrace(System.err);" [, B" t- l# d2 f8 L
                        //System.out.println(e);6 T7 o) q9 [: `$ |
                        System.exit(1);0 F. w$ ]& Q0 k3 o, J' A
                }) A  \( ?8 T2 @9 s- a

& t+ c  Z  G3 I( o2 f' f8 x! h" Q+ M8 P/ K% r
        }
6 M* @+ P3 n3 g9 h! O/ ^: g+ A* k1 h. L" f+ I, T" w6 A
        private void swarmSetp() {
- Q' b' `: _- L9 z1 b                list.addLast(new Agent(Id));
* r2 Q' ~/ ~1 y4 D# _                Id++;/ t; X; C# B: [0 j
        }# {0 K6 e, `' k1 I( [: c

% F: a# M0 t. D! g/ s6 o- L$ e        public Activity activateIn(Swarm context) {
9 l5 _+ ?. q" D6 l                super.activateIn(context);$ X0 S7 B9 ?8 A: w" D
                schedule.activateIn(this);! U7 v- N# Z) p+ o
                return getActivity();
% u( A5 U  x' B3 y* H: [* u( q        }
: q! E: h: A+ w  o3 m- n& x9 Z, n8 x- J7 }! y) ~
        public static void main(String[] args) {8 S' d7 o& q2 W" q! |% C# u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, a; B- v3 U8 M                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- z7 L* U7 v) M/ @                swarms.buildObjects();
% F$ n! W. r3 L9 e                swarms.buildActions();. C. Z& O! J* N2 h
                swarms.activateIn(null).run();
/ q3 _1 l' @( v8 Y        }
2 J! @' Z- o2 B$ r& @: @; l% b5 ^% i6 E! K% l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-25 11:19 , Processed in 0.015215 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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