设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11038|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 u' F0 [' h' l1 f3 `+ X/ F* N
. b) v3 p7 O, C5 R+ ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) e' b- N2 X- y4 I4 O0 |% o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* f; k, a+ o6 r5 i0 Q3 K. \
swarm.SignatureNotFoundException
8 H% l5 M0 J, D( q        at swarm.Selector.<init>(Selector.java:76)9 E" ^6 ]- J$ v3 _+ v# l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 Y/ G6 B8 f: k1 s6 U9 e9 n$ i( {' j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* Z% O3 x# Z2 |$ D6 T, {: \+ {5 r, ?% F$ [( D! O1 a' L6 m
  c( q% K9 u. ~( @' N
import swarm.objectbase.SwarmImpl;# v' S. m% A. l; e; N; K3 u+ a
import swarm.objectbase.Swarm;
/ {: D/ \5 f6 P& m7 x' g9 himport swarm.activity.ScheduleImpl;! _/ {$ n8 T  b: L( M2 G% b
import swarm.activity.Activity;: Y8 r" d- S( h0 l$ ^( ]
import swarm.activity.ActionGroupImpl;1 u3 n+ z8 S% A/ W
import swarm.collections.ListImpl;/ H+ s2 A' Y" }% I- h! x) T
import swarm.defobj.Zone; ) c- n+ ~" c7 O
import swarm.Globals;! R% o! r. Z+ }6 Z' P0 S: Z( z
import swarm.Selector;
2 R+ a0 d7 o" A3 R1 N6 ?4 himport swarm.activity.ActionGroup; 4 [% n; m9 D1 p% n
class Agent {
* I: r$ [$ H! t/ g+ @        char id;
* L1 m. k. W# E/ K- l/ B
( [# R% Z& x$ S        Agent(char id) {- \1 `* R9 ~8 B* e9 w- L
                this.id = id;
7 A) _( ?" m# O( Y- B        }
. W$ a- R0 ^. W* w: ], R& I8 g0 ]3 O0 S+ |% l& `5 O" @5 I
        public void agentStep() {1 Q$ g  G  }- E+ V. k
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) N' }9 ]0 n: r( {/ Y! m1 K        }
; V) C, ?2 C) h1 W. P" }1 \}
2 N0 W& {6 }: w* \5 \5 J
& c/ C/ d" ~/ M; jpublic class ActionGroupDemo extends SwarmImpl {: E  L0 _$ T( M
        ScheduleImpl schedule;
- }5 @" T8 m2 i; {! q1 w+ Q0 H# g5 v        ActionGroupImpl actionGroup;% K- l' g  j3 q% I3 t; p* _1 G0 h
        ListImpl list;
6 B, A; I6 _$ C" f0 \        char Id = 'a';3 H# T6 e% P5 I/ l7 v, ]

0 f0 I1 f" |/ Y* }+ J8 m+ ~# i) L. f        ActionGroupDemo(Zone aZone) {
1 |4 X1 h# w1 ^9 {                super(aZone);
4 l! t  H! ?5 l' d! s- l                list = new ListImpl(aZone);
  ^0 E! d* r+ O' B                swarmSetp();
  v9 i/ M3 y: b* D* M; A: o3 B                actionGroup = new ActionGroupImpl(aZone);
$ a) X1 `1 }  R- o                schedule = new ScheduleImpl(aZone);- W' G& P1 O& e8 L
                try {
- {0 M- \) Q( m" S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 j+ r) i2 T, @2 }7 |2 b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) E; B5 U. D5 m1 c                        , `: S/ F1 Y! t
                        actionGroup.createActionForEach$message(list, agentSel);( y7 d  o$ ^6 H: k3 T3 e2 i- v
                        actionGroup.createActionTo$message(this, swarmSel);
+ M* t7 o! u4 h4 z: q/ n                        schedule.at$createAction(0, actionGroup);& b" A8 Q$ w! O3 v3 s
                        schedule.at$createAction(1, actionGroup);
7 ^4 h! T: |) q9 r) [                        schedule.at$createAction(2, actionGroup);
* U/ X2 i) K% i* p' F( ?3 ~8 x
3 n/ Q! o+ Y5 z' T. I1 _                } catch (Exception e) {
# P# L4 l" p. O& X8 r                        e.printStackTrace(System.err);+ ?  s) I- P* @1 `4 |
                        //System.out.println(e);
& C4 t0 h- h" g$ C                        System.exit(1);
  I. n- B2 _% Y9 A. M6 N+ n                }
; H( O! {/ G# |1 K7 {; k5 R4 ~& H. I2 [! {( v
% B; I  j& l( b, s5 q
        }
3 A6 q! {/ t) M! K5 n3 z4 H+ X3 X% P. n
        private void swarmSetp() {
% |3 k4 j" u9 D  G                list.addLast(new Agent(Id));( ]+ F# ~7 @  f
                Id++;
$ {1 c0 y; f# y& N9 E8 X- p        }
* J2 r" W  i8 T& U4 D% S7 I' p) O) }3 g5 m' z9 p2 f* X7 ?8 {
        public Activity activateIn(Swarm context) {
3 l: l  v: G  b1 W$ R9 L; Z7 ?2 z                super.activateIn(context);: z" j( q$ A% J# T- ]: c6 r
                schedule.activateIn(this);* q; x: H/ f; _1 i( X
                return getActivity();
% Z; k$ O) S, ^, G7 }. a; M( z        }
9 y6 q* D( G( p  P* E: j0 s( c  q9 h% ?9 _
        public static void main(String[] args) {
# N) }8 ?  H0 R4 u% L" x6 V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* u0 R; C* e9 W9 h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' w* b7 f2 r  f8 b
                swarms.buildObjects();
9 z. s: s/ v- P9 ~* J- O                swarms.buildActions();
; j& M, J+ L4 ?2 {$ w! V                swarms.activateIn(null).run();
; D8 a  B9 [1 e+ q9 F$ i        }- A. S$ l( A9 O  J! P' Q

/ x$ A; |5 v% w9 k& }- r4 q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 03:39 , Processed in 0.015736 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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