设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8794|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! n2 `9 {- V1 F  \& j
* w( `0 |6 Q; Y2 k' {/ ]2 z2 y* B9 d! c) D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# @& P1 ]) J& \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( H' H( R. v- k! ?7 c
swarm.SignatureNotFoundException$ U" u* M$ @$ m% h
        at swarm.Selector.<init>(Selector.java:76)' z' F# a, C. V) ~7 v& _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! l# t/ N" @9 m0 i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 _  r8 P  ?. |* n4 Y& O9 Q5 q+ d* ]8 `( S
9 U  c! O! Z4 E
import swarm.objectbase.SwarmImpl;& l8 i& i& ~: e3 p6 `% j5 _; Y
import swarm.objectbase.Swarm;7 Z; s3 E# r0 v7 c" c0 X, o
import swarm.activity.ScheduleImpl;
4 J) l$ z2 C/ P2 e0 e" I  x2 ~import swarm.activity.Activity;2 }0 v8 u% o  @* L9 r
import swarm.activity.ActionGroupImpl;: S- W; h3 Q( |3 Z& W+ X
import swarm.collections.ListImpl;
" `) h3 v& a/ I' u# nimport swarm.defobj.Zone;
8 q- ?, v1 E7 ~import swarm.Globals;
. @: U- r; |  J7 x- W4 N8 a+ Zimport swarm.Selector;
# V1 C- a1 m, E! J1 U, _import swarm.activity.ActionGroup; $ P  D8 H5 W: X" u% A
class Agent {
1 z9 s( i- C! ]1 {        char id;
% j, g; _  j) p" D7 T4 W1 B6 J# F- q6 A6 S
        Agent(char id) {
( B5 O  e$ `! h& ^" E                this.id = id;
" H8 E/ j# D  x        }
' x' q* d, o, U& [3 B- V
4 U4 K$ o  v' E; |        public void agentStep() {
  h# |* Y/ E2 T/ Y                System.out.println(id + ":" + Globals.env.getCurrentTime());* q3 H1 B9 U1 R
        }
) [( n- n& d- L  ?$ y& t/ a}& Z  J2 j2 R  D2 \! F0 I
+ l8 x! d' a6 ~
public class ActionGroupDemo extends SwarmImpl {
# B* V, J3 g/ Q# M: F        ScheduleImpl schedule;
5 V6 V! s1 C4 R3 e        ActionGroupImpl actionGroup;
; C+ @& J/ c3 z- o        ListImpl list;5 D5 @# b& M" j0 w
        char Id = 'a';( B; o2 D; ^( b0 E: F' `: _

# ]7 s! P! {# {! m, v# L: M        ActionGroupDemo(Zone aZone) {' W" }9 D8 `# A: F
                super(aZone);
6 N% M( w2 h- B: O" ?7 v; |+ A4 `/ I                list = new ListImpl(aZone);
& B7 N1 C: G6 S                swarmSetp();. ?0 w$ @5 D- V1 a9 n2 W) o( x9 S$ e
                actionGroup = new ActionGroupImpl(aZone);
1 ^6 B* ]' I4 e# M! k                schedule = new ScheduleImpl(aZone);
) F, a) y( P$ L& A) N                try {
! y: k' W1 c# l# p% d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 F* j. |8 q0 @- N' S3 G# j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 e8 s4 z. l. H/ E
                        
, g: t# q3 C; k9 d. H6 k- H                        actionGroup.createActionForEach$message(list, agentSel);
: i8 z3 E! E5 z( V# _                        actionGroup.createActionTo$message(this, swarmSel);# }2 g1 m9 E+ P0 G6 C  G
                        schedule.at$createAction(0, actionGroup);
, h% q' R" n0 ^6 R  ~6 N                        schedule.at$createAction(1, actionGroup);
; u1 `1 p6 b5 U7 w, L8 x( h                        schedule.at$createAction(2, actionGroup);
* ~$ }7 L7 d+ Q# v' ^" a6 B) L0 `$ ]5 T; S
                } catch (Exception e) {& ~7 `$ n' ?) e% [: A
                        e.printStackTrace(System.err);& u0 f$ Z1 S' F9 g$ y
                        //System.out.println(e);
# v5 Y& s' R0 f0 x8 R2 m                        System.exit(1);* j1 V  e0 [6 M( T6 \  w
                }
( N# ^6 R4 V0 A. ~0 u$ E& F
) I, G1 }* E! z9 g/ ]1 E
1 \  G/ R& P7 y3 q7 x6 M        }
; k2 ~* i8 I5 t  c+ e+ U+ T6 d  ~& h' [9 Q2 G
        private void swarmSetp() {
$ y* ^& |2 @! b, {2 U                list.addLast(new Agent(Id));7 X- L: H: h$ E9 `, S; V
                Id++;
' _4 J: g3 w+ N0 B% S        }
6 {* o. c4 @" o4 p0 _9 V) o9 }, t0 `) r; y- e0 V9 A+ A2 V3 t
        public Activity activateIn(Swarm context) {9 |) v4 e- A5 \7 y* x
                super.activateIn(context);# t# u. ^9 P1 r
                schedule.activateIn(this);) ?$ k" O- p, b
                return getActivity();6 E5 [" y8 q* Z
        }& n% t( B* k% H' D
+ J1 j& ^* F6 [1 f) \1 L' n: O
        public static void main(String[] args) {; k/ ^$ C/ G  Z3 r- D0 t
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 C& p; C+ C) E5 ^7 t# Y6 a2 z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) w- P. `5 L0 ^4 Z% L* h                swarms.buildObjects();
* h7 e% e0 _8 S5 B                swarms.buildActions();
0 _9 T% H/ h' ^# f* d4 o3 j- D                swarms.activateIn(null).run();0 ~2 P$ m9 E5 A6 J/ ?+ z8 c
        }
7 K- ?  u1 y& |( ~
5 H2 s. T. k. ?. T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 02:52 , Processed in 0.019705 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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