设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12609|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) n6 `* w8 h; k: x

7 L7 }1 X5 f. @1 g. x# u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& U' l& i' y% g! N: H! Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% m5 b& c  Z# F' ]  ]
swarm.SignatureNotFoundException
' q# i# I4 d* B9 |3 u7 a! X        at swarm.Selector.<init>(Selector.java:76)
8 d$ R- n; ~! v, _0 o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' I' L  d! \6 w3 {; ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# A( Z5 V" L1 f. ?
0 \: i; g; k( [
) a% T0 p( _: @8 Fimport swarm.objectbase.SwarmImpl;& a; I. E5 k- Z
import swarm.objectbase.Swarm;
  v5 r4 ^! K% N/ i3 bimport swarm.activity.ScheduleImpl;8 \2 r+ j6 a: V
import swarm.activity.Activity;& ?  J* s) \9 \' Y# S* _0 ~4 Q
import swarm.activity.ActionGroupImpl;- a: d, N- Y* G5 |4 ]6 z
import swarm.collections.ListImpl;" q, r8 s' n1 ^% c) R% }
import swarm.defobj.Zone;
& Z  v% B2 W, o+ w8 k* ]) z7 kimport swarm.Globals;0 Q" U- s# h+ G3 a$ k
import swarm.Selector;
. W; W. k0 z+ D- qimport swarm.activity.ActionGroup; + r6 A/ C( W% B2 q
class Agent {8 S* C- B2 Q9 x
        char id;
  x: W# a* A7 I: {& ]
: k9 \% Z! O0 [  u2 M5 H        Agent(char id) {. u, w( Q% I* H
                this.id = id;
! x) b2 d9 {! M) Y        }+ w* M3 ~8 v2 t0 i* [4 [

( W  j+ Q$ [( I8 ~) o. `9 i$ v        public void agentStep() {# H" y2 B# G9 L7 [% @$ }
                System.out.println(id + ":" + Globals.env.getCurrentTime());& _' T8 }4 c: `. q7 R+ F& M9 i
        }
4 z5 [2 L6 C; z* p2 s# W3 h}
" H* e' z7 g9 w& B! K' n# o4 Y5 g+ d  ^, C6 C" e% w) l
public class ActionGroupDemo extends SwarmImpl {! ?% l7 {7 Q  F- t% P
        ScheduleImpl schedule;
& O6 T$ I  O% K7 a! m- ~# n        ActionGroupImpl actionGroup;
2 D$ r0 S, s; c$ M        ListImpl list;* m. l1 n: D) Y
        char Id = 'a';/ P4 R, T7 V0 B! L9 O3 Q) b: A

  l' J$ B$ ?' R2 T        ActionGroupDemo(Zone aZone) {
2 M# ^; d, c2 A8 H                super(aZone);9 n2 O- o, f) ~  c
                list = new ListImpl(aZone);
! p# I8 L' b5 B- o) p2 R# t4 s                swarmSetp();  }, ^9 ?2 _0 A3 N! k
                actionGroup = new ActionGroupImpl(aZone);: x$ P7 G7 J+ Y5 N( I
                schedule = new ScheduleImpl(aZone);* S, f0 G* u% |8 `1 H; k4 i/ [/ z5 e
                try {
% @# c' [% \2 S. G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* w$ l. Y0 d" I1 U. P( L+ i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- ]- }3 ^; s& d+ M
                        $ @- g- d, r  G$ X/ S: Z2 h" @( U
                        actionGroup.createActionForEach$message(list, agentSel);* \9 h* \7 A/ L2 `/ W/ f) q" F
                        actionGroup.createActionTo$message(this, swarmSel);
& V2 ~. Y5 c% z# v8 v3 C                        schedule.at$createAction(0, actionGroup);
# c6 M# q$ F+ n2 F                        schedule.at$createAction(1, actionGroup);3 `( J; m, l! Q7 _
                        schedule.at$createAction(2, actionGroup);' z9 |, b9 j! z5 c, _6 p
5 M' I1 m* w* @8 D
                } catch (Exception e) {# ^5 _( m0 e. K& X/ ^: l3 g
                        e.printStackTrace(System.err);
- W1 @6 y7 J, d$ \* m                        //System.out.println(e);
, O* `" ~) V  v# W( m+ z7 _                        System.exit(1);- C4 R8 e( p* p; D& D! q' Z
                }
! f3 V# v/ g/ {' O# M- W8 Z9 v( A& U5 l* W+ T9 E5 g7 p8 p
6 R0 z" s  D9 F% b1 @9 t$ ?: D0 n* e( [
        }
" |( J* T* X( Z5 Z+ Z5 U2 k2 @0 Z/ U* r4 m9 n- u7 S
        private void swarmSetp() {
) \4 k+ ~5 r. n! \8 x' f9 \                list.addLast(new Agent(Id));& m! H( r! u9 j: v, _
                Id++;4 c6 X" K2 V0 T& Y( V
        }
. T/ s5 r# E$ h! {+ F3 A4 x  d1 O5 ?9 |' Z! I& U
        public Activity activateIn(Swarm context) {9 b, d1 g) n* |% y( ~" L5 a( u
                super.activateIn(context);
  j2 S5 c5 o$ p7 a" i7 H6 X2 y! l                schedule.activateIn(this);+ C1 S# o0 q  S$ x
                return getActivity();
! a& O9 j) _1 F; J. u) h9 P, p8 Z        }
: `( j8 R; @3 C1 B8 b, Z: d
; I* d/ O/ _  f1 ]& Q0 [        public static void main(String[] args) {; \3 P5 Q/ w5 E# `- |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 S7 I8 J2 h' ^1 D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% Y: Y) F7 [( n" a6 P& w; z5 g! J
                swarms.buildObjects();/ {3 p( w1 ?& j
                swarms.buildActions();# W: H+ E8 I. G  Z
                swarms.activateIn(null).run();
4 t9 f* x7 Y. G7 S( Z. M5 P        }
8 N1 H& x; s, j: r; m
# Q) S- y0 Z- R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-13 18:34 , Processed in 0.017329 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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