设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7496|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 n) L; N# _  l( E$ `  l  y! \

& u. C  H( z9 @6 Y$ T$ v/ ?/ \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% M7 r9 O; P" {) Y3 Q( c' L' z6 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 _( F' G0 P/ |9 q! X
swarm.SignatureNotFoundException
4 @9 J! p( U+ r9 W        at swarm.Selector.<init>(Selector.java:76)/ ^1 I% M! }& w* ~+ {$ J  u; Y0 \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 e0 l/ G  y5 C2 J. ]% }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 ~0 O$ U1 R& C9 K0 k7 I- L
/ d4 h5 E4 d; Y6 H# G: L, X

. e* x0 T+ H/ {/ q9 U& I# wimport swarm.objectbase.SwarmImpl;
2 w- r; ~/ X0 t+ W% @' D. G# B! kimport swarm.objectbase.Swarm;
. K" k5 r) f# z) g; }, mimport swarm.activity.ScheduleImpl;
- G+ \: i7 k8 C  Z0 Qimport swarm.activity.Activity;
+ \* w* H% P( d8 ~6 g: D: G1 |import swarm.activity.ActionGroupImpl;9 T/ X7 f( v5 R1 J7 C
import swarm.collections.ListImpl;
) E- H9 j0 o+ `% A6 N" T8 fimport swarm.defobj.Zone; 1 m( {: G, w, ~6 D! s0 K  h. K
import swarm.Globals;' g6 h  m% d4 l. G, G8 q0 x# ?
import swarm.Selector;8 f2 ~4 }$ `/ a; U
import swarm.activity.ActionGroup;
* p" `, K0 p/ E/ o2 ?2 v  g+ bclass Agent {
. x0 R- P% F1 |9 }        char id;
# h6 T2 \5 s& E; i. h/ W
( j' k7 Q: ^: B, @% C% H        Agent(char id) {) B' X- w1 B; q- d7 ^
                this.id = id;
1 T6 m2 _- ^. i; [5 R/ X        }
, z7 f, K  E3 a; B1 ?$ _
: M8 Q  }0 ^& U' I+ X        public void agentStep() {% K" N% G8 }* e& V3 c
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ y, U4 c' [( A% W$ G; U5 f
        }
  p) E& {( E4 _# {" l}
0 P4 s  a1 L9 ^1 H7 U9 W# L$ Z8 R+ y/ @. i' P4 l8 {4 t
public class ActionGroupDemo extends SwarmImpl {
0 o4 ^% `2 f& }0 N3 U: F- [2 i! ~        ScheduleImpl schedule;% U8 S. A7 W* _" V( q# s' H7 s
        ActionGroupImpl actionGroup;2 z9 o/ @5 o% h  \6 K
        ListImpl list;+ x( p! b4 r6 n4 G, f; V! L; m
        char Id = 'a';
4 Z: h2 N+ D& P  ?2 p8 ^+ I& g* Q, m& z, F! F' R; m2 j. E
        ActionGroupDemo(Zone aZone) {2 Q' @% g' M. i" Q
                super(aZone);
+ g* @- [' X8 a  r) f% k                list = new ListImpl(aZone);. o4 G# I0 ~9 {9 s5 m
                swarmSetp();
; R7 z# `5 L+ u: ?: E) U                actionGroup = new ActionGroupImpl(aZone);
- M* A# a+ S1 b& S                schedule = new ScheduleImpl(aZone);% P3 q4 B; F/ L7 @: b6 d5 q6 @4 ^
                try {
, J: g5 M8 e- d9 [6 [: Y# w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 s& s; a! ?$ `! h2 G# s                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ H2 a- z) `$ C9 T  D7 z
                        / `' \6 B% N7 h; G$ D- A; t; E
                        actionGroup.createActionForEach$message(list, agentSel);, m- `4 A8 ~6 |7 W1 F0 e
                        actionGroup.createActionTo$message(this, swarmSel);) b8 G0 [, Z% Q0 @8 x: y+ p
                        schedule.at$createAction(0, actionGroup);) f2 G, z1 P9 {- a
                        schedule.at$createAction(1, actionGroup);4 c- H' ^1 V2 c( H
                        schedule.at$createAction(2, actionGroup);
# D# u2 K! z: R4 L3 o4 G9 C" `+ ]5 i- g0 D# ]- [' d' @
                } catch (Exception e) {
0 x, R- a8 s* o0 f. s. L/ I                        e.printStackTrace(System.err);
" @; i  G! I- Y4 _& R: ~                        //System.out.println(e);
. N9 s" R$ N) P: T1 f                        System.exit(1);
' x- D- W1 t' O! Q( `                }( s$ ]  A% u9 P* \' j& h
1 _1 J. K4 `& r: V' |' E% I# [0 r
/ r3 Z% i# B/ F& `1 e
        }  }% r$ ]) R% K0 ~/ T8 |
0 Z. D- v7 ]1 N3 |
        private void swarmSetp() {3 W- k! `' e8 t1 J# @
                list.addLast(new Agent(Id));5 D: I. L& D& ^3 p- }
                Id++;
5 ~# D$ q& \8 K, S2 q$ T! v        }8 {' W+ _- g$ R% m
7 `$ \+ N0 Z! \
        public Activity activateIn(Swarm context) {
- r+ U) S/ z. I6 B                super.activateIn(context);1 u: a; `8 B$ p; B; t  a
                schedule.activateIn(this);
( a  M* ?" _, q+ M3 B3 a4 w5 h+ \                return getActivity();
3 w0 w. ], H  ^' ~0 `( o. y        }4 w5 r: Z; S3 {

- x! `9 A" K. g        public static void main(String[] args) {
8 x+ U0 s1 S' }4 R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 [( ?, X* _$ n9 w& U  D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" c4 W$ u# L( q0 p
                swarms.buildObjects();
' ~( ^2 D- `" \. P; C                swarms.buildActions();0 v3 d/ V6 E; o0 @/ |) H0 t
                swarms.activateIn(null).run();$ E6 r- d% l' f% e3 y+ }
        }/ |9 K2 M# [3 F) v5 c

. _8 ~8 c$ `$ b. A* S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-4 15:18 , Processed in 0.018600 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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