设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12786|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " W8 M1 m- C" w* c" {
" M- L- P0 G; j* t4 ^4 J( i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& S' b5 Q* {! g# H9 B+ Z  F9 B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 m, a: ^- J" z5 }# I. b) Vswarm.SignatureNotFoundException
' d2 v/ i+ T! G4 N        at swarm.Selector.<init>(Selector.java:76): H4 j# s7 _' D7 |9 j4 i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 N- ?8 r) D! j6 E: y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* u  _8 G1 V8 a9 v. f$ _7 H
3 b) E/ U5 ^: ?
4 R2 A" g# e/ X3 p8 Fimport swarm.objectbase.SwarmImpl;) i* j( z0 A: H
import swarm.objectbase.Swarm;
, m. r  e; y* T4 E* N; F" Zimport swarm.activity.ScheduleImpl;) j& E4 c+ `- \, |
import swarm.activity.Activity;
( K7 |4 ]) s. e/ d/ vimport swarm.activity.ActionGroupImpl;
9 f: y% R" s$ \( Limport swarm.collections.ListImpl;7 z- o( _+ c: O7 }
import swarm.defobj.Zone; ! H3 J( y; }) |! A6 T
import swarm.Globals;' i0 J) y# K& \
import swarm.Selector;
* c$ i- X7 n7 F2 y, ]2 pimport swarm.activity.ActionGroup;
: C7 ]0 ]. j( X3 aclass Agent {
. z, `5 [- X  K. w+ t        char id;" z$ v$ i: T9 Q! R7 D

( v* s$ Q# h& d7 A4 l. B        Agent(char id) {
( U  l5 [- U- i1 U5 [                this.id = id;) S  T, }+ j5 Q6 `5 ]7 Z6 F
        }# [3 h$ ~- O4 V. ^' z$ t; D" l

& D2 s6 ]( w" Y% u3 U% e        public void agentStep() {
) T9 t4 h* r5 a8 Y                System.out.println(id + ":" + Globals.env.getCurrentTime());
( x) {) J1 y' ]  h: D        }) b4 [3 t1 ]2 ~$ a/ k8 z) B* _5 V
}. s2 z: J, _. X/ F

5 z1 w; ^4 v4 y+ V0 M8 P$ \+ vpublic class ActionGroupDemo extends SwarmImpl {/ @" A: E+ {+ |, ^; D( j( L
        ScheduleImpl schedule;
+ [2 y! @' N" S' t3 I        ActionGroupImpl actionGroup;
1 \  L9 g- [: a" |( i6 _! F        ListImpl list;
3 `# v4 P0 N7 z, R. H$ S        char Id = 'a';4 a& G8 J( a& H5 E' \" w$ G# E

1 k7 Q' A/ {2 ~        ActionGroupDemo(Zone aZone) {
1 J# D, d. d2 U/ ~" w                super(aZone);: q" x7 m& A, [5 P' |
                list = new ListImpl(aZone);
( e3 {  s8 b4 P' ?4 }0 |7 Y                swarmSetp();
! g/ t) I1 f: b; z2 G2 c8 v                actionGroup = new ActionGroupImpl(aZone);  o8 E1 I/ e0 K$ c( q: X8 v. M: l
                schedule = new ScheduleImpl(aZone);
, {0 T. ?/ u* |- S  ]                try {
, R. d2 ]# G  C$ _! h+ B- o8 G8 D4 \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ G9 n# @' _! ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# R5 w+ ?& c, D                        
% X& Y2 b/ n7 J: }                        actionGroup.createActionForEach$message(list, agentSel);
4 v. k: E; a  B6 q* N                        actionGroup.createActionTo$message(this, swarmSel);/ \% Q8 B/ P) G2 {6 }
                        schedule.at$createAction(0, actionGroup);
7 \/ i; P9 d' K% s, c$ ]                        schedule.at$createAction(1, actionGroup);
8 V$ @- U/ @: e3 x& L7 ^                        schedule.at$createAction(2, actionGroup);
9 e6 J, `. E, p1 Z- Y& d6 t# `
: V$ c+ m  C! y4 A                } catch (Exception e) {: Q( W- g& k6 l" g: _
                        e.printStackTrace(System.err);2 h  F$ u2 m4 F
                        //System.out.println(e);# q" T) e; y0 q9 _& r4 ~. z
                        System.exit(1);
2 P: q0 ^% x7 E1 {4 \- p( @                }! i' j, x# G" l1 j6 ^5 Q
6 y* S. W+ l! u9 k/ }0 P

+ r- Q2 F$ L" J" }        }! N1 m  S: b/ |1 P/ V' w# @
( \$ |) n. i/ T2 {; j5 k5 {, t. y: F
        private void swarmSetp() {! M5 ]9 c) Z- i% W) s  F# p- o" U
                list.addLast(new Agent(Id));4 D; m; J5 q) e$ e/ w
                Id++;0 s  a: e7 n# |* _
        }
) I1 g: C- f1 e0 |9 ~' ]3 d# U% _5 I/ ]  y8 ^5 W$ y
        public Activity activateIn(Swarm context) {
# V) Z) Y& ^2 ^. S; N$ c                super.activateIn(context);
  h3 V$ V$ d8 R                schedule.activateIn(this);
) R* C# ?: x+ t6 h                return getActivity();
9 ~4 {. P. L# B( ^5 Z6 h        }
# B- Q5 h! q0 V+ `7 n  f6 k
! d$ H1 S4 g, r' x# {5 f, Y        public static void main(String[] args) {
3 u# y/ S9 x: ^, _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 d" E- X5 O  u9 a, ]/ H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 S. Y  \" n) s, k% E2 C2 `
                swarms.buildObjects();5 Q% A2 W: o' O) q+ @! ~
                swarms.buildActions();
4 J/ P+ s! M. F                swarms.activateIn(null).run();* g4 `' R4 ?; B1 ^8 _$ W" P8 U1 y& j
        }
( i$ B! Y3 L4 P9 f: H1 B
9 l+ F# a4 ^/ s" Z$ D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-19 16:26 , Processed in 0.020528 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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