设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13012|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: T9 s: f0 a& u* e* T6 J
. D& W% `' I5 ]/ F, i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( |# ~( B, ~( f# ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ d% D1 K2 I9 ~4 I+ l1 H
swarm.SignatureNotFoundException( G% W- ?/ K; M1 @
        at swarm.Selector.<init>(Selector.java:76)* w; g) y1 B& x& V) k: j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 L; ~8 ^% G6 b) i6 Z9 Y7 W6 c
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 K/ s% ?' y! q9 ]7 p# L4 k$ Q/ X7 o

  b  V( o% v+ @/ s0 O( Dimport swarm.objectbase.SwarmImpl;
7 N5 G3 T6 a) t9 v8 M6 k; Gimport swarm.objectbase.Swarm;
$ p8 E1 T: }4 H# Yimport swarm.activity.ScheduleImpl;
( z9 s5 F& M/ [+ v2 x0 b0 `import swarm.activity.Activity;; V4 w" E2 S- T* H0 J8 K
import swarm.activity.ActionGroupImpl;- V5 S2 ~5 ?1 A8 \) v
import swarm.collections.ListImpl;( T6 ]6 ~/ p1 @. d* p
import swarm.defobj.Zone;
0 K- s1 w' W0 yimport swarm.Globals;" t' ?9 ^5 R/ f5 R8 ?2 _# `8 {
import swarm.Selector;
) b/ V, q) T* j; d0 T3 u$ c5 @& Aimport swarm.activity.ActionGroup;
7 }0 g7 q1 J! Gclass Agent {8 |( ?0 U8 @4 O  R5 c/ j2 b
        char id;: L* S5 Y+ m  r

9 |2 O9 Y5 ~* Q        Agent(char id) {
1 v. y' ]5 X& m. d  R9 d" c                this.id = id;$ ]  P( }: k) A% `3 E( y( a1 G
        }
% l: ~7 W0 A7 S2 W2 Y) b+ s1 o9 K+ G( E9 I0 b+ I: L
        public void agentStep() {
1 X$ I- b9 K5 ]6 h                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 y1 i( e2 y7 g) E* {        }6 P5 j  u$ _7 J7 p
}& x. Q' a8 z! S, ^
% c: ~) K9 @  T: p! @! ^
public class ActionGroupDemo extends SwarmImpl {( ?; A# D7 g7 K; A6 A. a& d
        ScheduleImpl schedule;: B( V. i4 \9 h" ~& ]# c) A" ]
        ActionGroupImpl actionGroup;
' ]6 x& @, C+ _& N( y        ListImpl list;4 w$ Q7 y/ a: R6 r+ `5 z- [1 T3 n
        char Id = 'a';
- |/ S0 G' M# y( ~+ l
' I. w. x; B% E+ A' @7 e# \2 R        ActionGroupDemo(Zone aZone) {4 |8 P& i/ Q, W6 `0 e
                super(aZone);
9 y5 f6 i" {: F4 d2 r3 V                list = new ListImpl(aZone);# B: f4 b- ], C( p
                swarmSetp();
# T5 J" ^( U  P4 K+ R+ f% _! e                actionGroup = new ActionGroupImpl(aZone);3 W; H7 G8 b" Q3 J# J
                schedule = new ScheduleImpl(aZone);+ h5 M+ n9 q9 L2 R: @4 ]
                try {
0 d; s2 a6 X% v/ g9 h1 ]4 e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 q/ O$ p4 Q: Y) r9 A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ Y( H5 q. Q: N- I# `$ I
                        - q& o- b& l% d& T2 _$ D' p
                        actionGroup.createActionForEach$message(list, agentSel);
- A# f  _$ k' \- K5 c5 b# Z                        actionGroup.createActionTo$message(this, swarmSel);# v2 v) K- Q, `9 z
                        schedule.at$createAction(0, actionGroup);
) S% K5 |9 [9 y5 ~! p' l1 o                        schedule.at$createAction(1, actionGroup);
' e% r7 V! O1 d7 T, ^6 u- P                        schedule.at$createAction(2, actionGroup);
/ O9 _8 A6 Q6 c+ Y" y/ {+ d4 r$ Z" e+ \: _3 b4 u
                } catch (Exception e) {8 B0 Q% Y4 B: S
                        e.printStackTrace(System.err);) Q; h9 v4 c" y
                        //System.out.println(e);
  a/ h7 J" ~. X. Z, {                        System.exit(1);
2 x4 W6 m3 E4 z% Z8 `& L" L0 x$ H                }( \/ v, _" }3 W& Q' @7 c/ f" z
0 h9 W% M1 q# e1 j

2 N* R: p" A5 e# [0 k        }# R3 W2 F* ~6 ]# _

5 Y) a9 t9 v0 H, g7 W- _5 a        private void swarmSetp() {! ~9 G1 T& P+ }0 W0 I+ ?1 n$ J
                list.addLast(new Agent(Id));/ Y, F1 f9 r0 `/ l& Z* N
                Id++;0 {5 Y, r" S- j! D- S
        }9 B4 c' M8 _2 }: |& ~

2 x" o* o$ d1 I        public Activity activateIn(Swarm context) {$ R1 D. ^  J! |0 S
                super.activateIn(context);4 e8 O& X1 Y0 z, ^, K* W* m5 T! V* w
                schedule.activateIn(this);1 F& f$ P& {% v2 Q& b
                return getActivity();
# a9 E+ |8 X/ K6 m. i1 r        }: g! A$ T& P( k% ~& R6 s

( ?8 N, o4 J5 M7 L. ^: G% f        public static void main(String[] args) {
2 |4 @: Y, v* q- I/ S                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ X+ H. @" W- T- v+ T9 Z. E) k: K
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& R  K$ f$ D% d- q$ y& `7 i                swarms.buildObjects();; i1 w+ f( I2 h1 w9 u( k
                swarms.buildActions();
6 `2 Z4 j8 j( h. u1 x                swarms.activateIn(null).run();
+ I7 g" F8 P8 o* A, ]7 e        }
* N' R9 g0 M% a/ y
6 X' M3 j2 {5 s7 N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-25 22:02 , Processed in 0.016562 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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