设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14008|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( p( u$ f7 O5 p% K  |! x
! E  I" z% \2 X5 x) Y, v' |" p: ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- J8 X9 m5 Q8 T6 F# d  A. {0 N6 x' G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& \! Z0 n, _5 k$ Q' ~# h
swarm.SignatureNotFoundException
7 o0 h3 p8 A: J0 ]        at swarm.Selector.<init>(Selector.java:76)' Q- ^: `5 I2 ^1 _0 w' d* w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 G, }0 @8 b* M3 b% i- U8 t- L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( v- F: H/ @* r5 C% c/ R

5 r. @1 i& V3 B" T+ @
. c7 f0 A% X5 q* mimport swarm.objectbase.SwarmImpl;
# B* l" K" h- r8 w# e: c; U3 ]import swarm.objectbase.Swarm;9 B! F  I9 d8 s, S. m
import swarm.activity.ScheduleImpl;
$ K! n/ u" M2 gimport swarm.activity.Activity;  u- d' O$ C1 R8 {& w- w
import swarm.activity.ActionGroupImpl;3 X: Z/ V9 ]5 ^8 Z" P6 w7 A, h) B: k2 N
import swarm.collections.ListImpl;
% C3 u, S: b% i, o8 n$ D8 N" s: R8 Cimport swarm.defobj.Zone;
/ M; h$ g- h. ^# `. }3 a  y8 Rimport swarm.Globals;$ A  k% a3 _# g
import swarm.Selector;
" Y9 g& k8 S. J# i+ a3 Cimport swarm.activity.ActionGroup; 1 D  w8 g9 c9 s# X& g( Z
class Agent {) E/ y2 j& D: h# S
        char id;
" p7 [3 X: }8 o& t: i/ U% l
; f" b! i4 g# o, M. r5 l2 s. _& O        Agent(char id) {$ U, V. G3 t4 _; \  }3 ]6 r
                this.id = id;5 H0 I2 D$ n: J. A
        }
" d, a' |% d6 r
+ e" G' j1 L% s$ t        public void agentStep() {
- e- E8 J% L% u2 `- }; f7 S& Z                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 P  e2 N5 N" }# V! h+ v        }# |3 _- n4 H1 C& d5 S/ |) c) d4 H
}+ T/ ?8 w# t  R; ]$ j$ L+ M/ [( r
2 o& _% G6 O; ^) W" j% ^
public class ActionGroupDemo extends SwarmImpl {# D' W1 W/ R  Z7 ~; ]" V
        ScheduleImpl schedule;
2 k; Q% v# f) Z2 [* t        ActionGroupImpl actionGroup;
7 [& A2 `( a8 n' ?' Q        ListImpl list;
+ L6 O9 z. A7 ^1 g/ a: x3 z        char Id = 'a';
7 e* j8 n) ?! F
- w$ M, [: ]; a/ G- {7 Y5 y. f* K        ActionGroupDemo(Zone aZone) {/ d0 w' H/ H' X% q
                super(aZone);+ v. j4 }& V5 ?1 Y9 i: g
                list = new ListImpl(aZone);
# Z+ D' U0 a+ h                swarmSetp();
) j; G5 e; u. X* n                actionGroup = new ActionGroupImpl(aZone);
" D, ?& q& `: @! y/ N                schedule = new ScheduleImpl(aZone);
3 g) }5 {5 D4 k; x! t                try {
# k1 e& t* R( q# p' V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  j+ L$ P  I5 ^, E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 K9 [% k8 Y+ k
                        
7 ]) L* w1 ~. f1 Q1 ~, ^( }8 q6 S                        actionGroup.createActionForEach$message(list, agentSel);) `$ s6 J5 n7 e2 d5 U2 w' F; q
                        actionGroup.createActionTo$message(this, swarmSel);
0 e! R2 D$ u5 w+ i2 Y% I' {                        schedule.at$createAction(0, actionGroup);* u1 x" Z! r, @
                        schedule.at$createAction(1, actionGroup);
7 }6 @' }# ?) q, d. e) K! _3 q8 H0 e                        schedule.at$createAction(2, actionGroup);
+ a, f9 N7 S  {% C9 L2 E+ o) D/ t6 n( Z1 R# ~
                } catch (Exception e) {3 ^4 A" n% a7 O) _( }
                        e.printStackTrace(System.err);6 |8 E$ ?1 @0 u
                        //System.out.println(e);2 ]( X9 Y  \+ ~' s; u
                        System.exit(1);
4 m5 b! P2 W, Y7 y) w                }& N  @' t8 ]$ Y
: Z4 [1 b3 M& ^4 z
* Q1 c" C# ~& ^' @$ z
        }
/ b: v3 h2 e( w1 d
4 V- p% o% C) i3 z% @! l' r        private void swarmSetp() {
- V9 D, Z4 r( Q! J0 q! H, b                list.addLast(new Agent(Id));
/ O  j- c7 R; W6 i/ P                Id++;
9 A5 V3 x- V" D& L& B: o7 p6 ]        }
8 b9 T( q, ^) \: T: Z9 n6 f6 w# Z4 C( P
        public Activity activateIn(Swarm context) {. N+ j9 N0 T0 _) f1 P$ P
                super.activateIn(context);
, C" \, c8 X4 g/ J9 v6 h                schedule.activateIn(this);; F9 a& {; i9 [
                return getActivity();
0 W" [& ^9 c2 G+ j        }
1 t; @+ o/ U; R' B1 y* |
9 E) z  Y/ F" T        public static void main(String[] args) {
9 r' Q) c) o/ x. A9 U$ W+ I0 }0 ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- S2 _/ f# m; A; E! e' p% ~' ^* p6 U/ z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' A+ f+ z0 q! U2 W" O
                swarms.buildObjects();  J& l% w! `( J3 Z( L2 s
                swarms.buildActions();
) I& w2 \7 v, U                swarms.activateIn(null).run();7 e! z3 q* b) }4 a4 i3 b' {
        }1 S# L6 D) @/ r; q1 |
+ ?& T- o& d+ P
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-24 19:58 , Processed in 0.017894 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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