设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12076|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 ?% E' o0 G6 }( y0 w% H) A# P9 B" r1 ~0 y9 @' x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 _% x& V! _$ z. k/ o# Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ T- h, F( }+ g) D, h
swarm.SignatureNotFoundException9 i1 g7 H6 o  \3 y3 T3 {2 Z
        at swarm.Selector.<init>(Selector.java:76)
4 |/ H/ K7 M4 _, L( B- `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ j: ^" r' X' c( I+ i) k        at ActionGroupDemo.main(ActionGroupDemo.java:67), ]! b- n/ H, B1 b+ Q0 e/ Z
- x1 i( q: W. f' T$ l
9 Q: k8 i& @7 u6 D7 D8 a" F) G
import swarm.objectbase.SwarmImpl;2 t. t3 y: A9 g( p+ Y1 }1 H) ^
import swarm.objectbase.Swarm;9 O2 j2 a$ b% t1 H, U/ V5 t; m. Z
import swarm.activity.ScheduleImpl;: A( R' ^7 h+ g: y+ D7 g
import swarm.activity.Activity;6 V9 v  Q  H, n2 x% [1 O
import swarm.activity.ActionGroupImpl;; ^2 V, `$ |. R  y& K: D9 u6 u4 H
import swarm.collections.ListImpl;
5 S6 O* x& @& D. M# y2 Kimport swarm.defobj.Zone; # D. M/ C9 e, l6 J) M. x1 g4 v
import swarm.Globals;) I( K- q) {- b' ?4 ?6 a$ G
import swarm.Selector;0 N* W, S" Y% e( S, H, g
import swarm.activity.ActionGroup; ' N) a7 a. T% F0 m
class Agent {
$ d' g. N+ n- I" Y        char id;
1 g8 f& B6 {' u4 X# h
+ i$ k) ~" _3 q* `" C- Z! T        Agent(char id) {! U+ D) t1 K4 C  O
                this.id = id;7 }1 g3 |$ C6 {( Y5 d! Z
        }5 c) b# @, r2 \+ o- X5 e) S, M2 Y, N
7 N  m4 I. R: F8 V% R
        public void agentStep() {
: b9 _4 {1 A& O7 K& L8 e                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 O" c% x+ Q+ n9 E$ {  Z; R        }
" s* @+ u, ^; ]: b}$ E3 r6 z& \+ b: Y+ C- q

: {5 |4 l0 f1 a# Tpublic class ActionGroupDemo extends SwarmImpl {+ w3 }9 e9 _8 e
        ScheduleImpl schedule;; U/ I# L# R9 Q9 h4 U
        ActionGroupImpl actionGroup;
, l  T+ j: c$ d- A        ListImpl list;
. d$ `+ S; ^$ z6 {0 ~        char Id = 'a';
9 c7 u! L( p' ~7 i) f( M7 d& [' F; G7 G' r
        ActionGroupDemo(Zone aZone) {
+ Q4 P$ w9 Y0 S& H0 k+ s. R                super(aZone);
7 t' w7 q2 c+ ^# o1 x                list = new ListImpl(aZone);6 U. q$ n+ v8 G" v0 R
                swarmSetp();. m* p& e3 Q( R' ~
                actionGroup = new ActionGroupImpl(aZone);6 X1 N) S& s# ]! w1 f" ~
                schedule = new ScheduleImpl(aZone);
' P" b7 a7 j* ~4 z! S1 f                try {& q5 w7 J+ n) ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" P, c+ G* _) j# m                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( W- L3 X: u. _5 g9 _( w/ W
                        ) [# P9 K' N6 N3 e
                        actionGroup.createActionForEach$message(list, agentSel);
( d# t6 U- p3 ^0 B                        actionGroup.createActionTo$message(this, swarmSel);& w/ e$ I; D( F0 c7 _. C
                        schedule.at$createAction(0, actionGroup);8 M; k2 o! A5 N, R8 p- K) G, m/ e
                        schedule.at$createAction(1, actionGroup);
: D2 m4 l* `9 f9 Q                        schedule.at$createAction(2, actionGroup);. @/ n2 W" }% t$ ^' X

: k& Y0 A$ b6 d                } catch (Exception e) {
  |# i( [2 A4 @4 v( p% n                        e.printStackTrace(System.err);
% {: c7 n6 H4 g: _                        //System.out.println(e);  U/ Q6 f& I, z% V* Q4 C
                        System.exit(1);& H% T: v% u/ Z/ ~! }5 ~# f
                }+ ~0 V" m- R  h  A

; ~2 O% L% E2 g# l! e/ h9 d
/ l9 l9 `! J* A' u, t! N# Z        }; P6 ]7 L# M# j' C( _, E. F  E

9 M& h- [) M. |' O$ C2 U        private void swarmSetp() {
1 ]  @  Q3 @* T1 R0 L4 b                list.addLast(new Agent(Id));
1 A3 h! U# V- p& Z1 j& J                Id++;' T) r5 M- G4 V7 O8 e) }! R2 Y8 T
        }0 K; ^- _/ j8 ~8 k/ q

& n% w  g4 L' a7 S6 J* x: a( F        public Activity activateIn(Swarm context) {
3 T; x4 q' {! R9 _0 h7 S. I                super.activateIn(context);
  `. c0 s* j) l: [' e  Y                schedule.activateIn(this);
. Q$ ?. Y# _9 @5 m, ^                return getActivity();/ G. ~; U+ q8 N1 N  v+ j, ~7 G3 _
        }
( @* i  e* N3 b; O9 \2 w
. @/ n8 l( `4 P! E* R7 D; U        public static void main(String[] args) {
. H( N$ X+ p+ S% E4 f                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ Z, A0 g' r: i2 n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 p( L5 k; u1 d4 ^                swarms.buildObjects();# ^* y/ ?' v% ~$ r2 x  K# x; M& \
                swarms.buildActions();
+ b- g% k, E5 O+ V" O$ J+ X2 I                swarms.activateIn(null).run();$ c% Z9 H, C& y
        }/ f& S( }; E. G8 k

6 B# L  _4 F( H4 n. ?' J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-29 17:13 , Processed in 0.020313 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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