设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9890|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " p* i5 j. f& z
% Q( s- C5 ?+ z) L: j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ y8 P1 M0 W4 }2 F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, G% Y" G8 x- s# P3 o+ u& Dswarm.SignatureNotFoundException
0 t0 p2 _, e  M) W: ?- K        at swarm.Selector.<init>(Selector.java:76)) R0 Q) G; t* N* R# i4 J8 n8 C, ^% ]
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- S, \( L' H9 b; n; o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) s+ b' r7 z- b1 N8 |1 ~. m* _+ h% F- H3 O

- E. X8 O& a3 S" iimport swarm.objectbase.SwarmImpl;
* U( l4 Y1 o! `* N6 Mimport swarm.objectbase.Swarm;
9 {7 {8 p9 X! h) j  bimport swarm.activity.ScheduleImpl;
2 |% M# @$ P8 Cimport swarm.activity.Activity;2 y" c/ s* r" ?
import swarm.activity.ActionGroupImpl;/ U# N- p2 ~( {8 x" v- E8 M) B( z: A
import swarm.collections.ListImpl;5 m7 I8 S+ H% I# }. E  t- K
import swarm.defobj.Zone;
% A, o! `! m0 H  J: [, l' J# V* Fimport swarm.Globals;
; e* K9 q9 f# c& t3 I" vimport swarm.Selector;
9 ^3 @. L1 ]. N$ qimport swarm.activity.ActionGroup;
1 y- ^5 n2 A3 W2 T) `class Agent {
& S0 g5 Z  w# L* [        char id;4 T% [- Z0 Q# ?
( t* _/ ~% Q! n& C
        Agent(char id) {
4 A$ s( Q/ b/ l! F* B& |- `8 a9 s/ f                this.id = id;* ^" L, B2 _; S# z1 |7 _0 p
        }
& T  j/ t. U* o; Q, A( m3 a) s( S) v9 k  w* ~. ^8 s6 ^
        public void agentStep() {, [4 F; U# T# [0 A( q+ Y5 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: f+ b2 s- ]4 B7 [        }
1 ?7 W) l' |, }9 b# Q}
0 N) f" o/ ?5 Y" b) z$ P. q- N  v0 [' G9 Q) {2 B5 H
public class ActionGroupDemo extends SwarmImpl {
: S! X# E- f5 X4 H# Z- y6 M        ScheduleImpl schedule;
; l" _+ A# h" q' d0 V        ActionGroupImpl actionGroup;
, V$ X5 {" P, M7 T+ [- k/ H$ J) T        ListImpl list;* U  K. o+ P. q; E
        char Id = 'a';
8 D/ t5 x6 P+ C) g! x
6 b5 H, q: R2 D- [' {% V1 q        ActionGroupDemo(Zone aZone) {
' \" i  x7 E+ m1 X( a                super(aZone);' ?4 j7 x, s/ N$ n
                list = new ListImpl(aZone);  ~# g- L8 g: _  T/ d- e+ ?1 x
                swarmSetp();
* R+ s1 V& g8 S! w( d  ?                actionGroup = new ActionGroupImpl(aZone);& s# |) G$ G# a" l' ~4 s5 `
                schedule = new ScheduleImpl(aZone);+ h/ B, G( y# R" r) }, g  i. m* b
                try {
' `  h$ ^, @2 k0 d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: }' ~0 ]9 k, ^- p$ S; s
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 y+ k) W5 L( {5 k8 o2 U                        
1 T6 V6 n/ D' w2 e6 U) O% t+ b# N                        actionGroup.createActionForEach$message(list, agentSel);
! `2 s, Z; i9 \. ?6 m, j5 ^5 Q                        actionGroup.createActionTo$message(this, swarmSel);% B9 ^; L) n; @4 x
                        schedule.at$createAction(0, actionGroup);5 L) J: b( S% [8 I1 }
                        schedule.at$createAction(1, actionGroup);( G; c6 I; j) r; H2 s7 Q
                        schedule.at$createAction(2, actionGroup);
$ F! y  I+ O1 |: D# q8 d+ w& @* M" {; }, V# F" a
                } catch (Exception e) {% D& G+ Z  Y9 P: g) J) e
                        e.printStackTrace(System.err);( E, K# m2 a1 L" ^7 K% \
                        //System.out.println(e);2 W/ y) V) T8 {
                        System.exit(1);. q* M: l5 G: E$ t
                }
9 l+ s2 ]& D/ u# Y) g" k5 q/ L( q4 Z3 l4 Q& v6 P
4 ]7 T/ C. o8 [) o! K) a9 ]
        }6 I: m, H; G3 }+ V; y5 U  v
" E* {" h, {% s5 `) `: d
        private void swarmSetp() {2 x- ]0 Z2 ~3 h& r
                list.addLast(new Agent(Id));  |% q, c! R. C
                Id++;
8 P; ^! f' @, x3 ~6 ]! q3 R        }$ K* v3 ]( n/ ^$ u! z
7 T" z0 h5 b. Y) O- z5 n
        public Activity activateIn(Swarm context) {" U; q# l# U- U7 X5 b
                super.activateIn(context);
; P6 }) Y) T5 ~1 j; }                schedule.activateIn(this);
: _) ~- t+ l  T% X! M$ F+ i                return getActivity();
" d" n% H: H" O        }
5 M# o) c# _( F# T1 d% m" e2 D4 e% |1 _
        public static void main(String[] args) {  c0 q! a: s2 _  g. c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- d: a9 n. w( s+ B9 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 U4 g" E* {4 Y$ V                swarms.buildObjects();
' A) V$ K; |( [# }9 X; s                swarms.buildActions();
* J+ F! s" ]7 y" t8 M) M                swarms.activateIn(null).run();) v. b- v' {: g9 o8 @1 U
        }
& A, [0 F# S* w$ l& R' i$ y6 A5 c& w9 P- L9 g# s0 `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-26 17:53 , Processed in 0.016557 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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