设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9036|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + {+ ~0 U) p9 d4 d7 ?% W

: [# t& _3 @8 W! u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ ~9 e* v1 K5 j0 i, ~5 y4 A& f! [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 a, t  V$ o9 l+ S
swarm.SignatureNotFoundException
9 z, d% H. H& r0 A, U        at swarm.Selector.<init>(Selector.java:76)
1 {7 ]$ J1 h1 ^! ~+ |. W( P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 P5 O, h* Y! R/ O% i. I/ D        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 {3 L) b2 \3 h( `9 n2 F' }% a. _
/ ]2 v6 R+ n. g) h2 F
1 K# R( m6 c* }; s+ u+ \4 g
import swarm.objectbase.SwarmImpl;
4 E6 V6 J5 V, uimport swarm.objectbase.Swarm;" X8 g2 W" m/ B$ |* g
import swarm.activity.ScheduleImpl;
. z: M: O5 f/ o) _6 c" w3 oimport swarm.activity.Activity;
7 ?; H) y1 O  E& u9 ]* M2 C, Zimport swarm.activity.ActionGroupImpl;1 P8 C) ^( s+ y$ P  f
import swarm.collections.ListImpl;% V0 x: r$ {- S; r* g
import swarm.defobj.Zone; - d: B4 u$ K$ i9 V7 s! w
import swarm.Globals;
% {  [" J! I2 X+ Qimport swarm.Selector;5 _( v7 i' m5 m! S1 m
import swarm.activity.ActionGroup;
2 U+ C7 f# q" Q- T4 mclass Agent {
! d  W( u! P# G3 l        char id;9 C+ ]5 w7 A/ p
+ a0 l% B; b; s
        Agent(char id) {2 I$ c$ j! r1 V  A) j5 U
                this.id = id;
" m! \: a" V; c+ B" v& S  t        }
3 C" ~, B) V# A' S% J! m
' w; r7 x7 W! E8 G8 t; t/ p1 H        public void agentStep() {
% g! i9 _7 c) P# T1 J# ^: g* B* ~                System.out.println(id + ":" + Globals.env.getCurrentTime());8 ?5 z1 T2 }' F- Y2 V. E. j+ f: M
        }
# t; g$ f3 m9 O4 k9 B}
% m* P: f% t  G7 I0 H/ W& b  D9 n0 N9 K# u" R/ A: k
public class ActionGroupDemo extends SwarmImpl {) _5 |& S: G' A2 J0 T
        ScheduleImpl schedule;3 Z5 T: m+ ?* a- \, M1 R6 ^5 |" ~
        ActionGroupImpl actionGroup;
! W3 N" {  z9 N        ListImpl list;
1 @( g$ l) {8 ?# g        char Id = 'a';2 M1 u9 A. s% I5 `' [# F& p2 d. i

2 }& H. A0 W6 }        ActionGroupDemo(Zone aZone) {
: K: w: r7 e" v6 G                super(aZone);1 h: K( \4 g3 ]3 o3 N, v2 X9 }
                list = new ListImpl(aZone);
8 f( w0 J# f4 B4 T4 @                swarmSetp();* K+ i3 J- z0 `1 E6 H7 J$ Z6 ^* d
                actionGroup = new ActionGroupImpl(aZone);
! z7 F" B# n1 l4 u                schedule = new ScheduleImpl(aZone);
4 M" {) n+ j" Z/ u                try {& o2 B9 R- J- l, {# i4 ^! Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! ]4 z0 c$ I$ `" o5 p" r                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; S1 T/ i! B$ B' G9 U' m                        
( X$ F5 A5 G+ p9 T$ t7 v! V# ]  J                        actionGroup.createActionForEach$message(list, agentSel);# G! @* I- M! O% I) M% S
                        actionGroup.createActionTo$message(this, swarmSel);
8 A3 d; A! _: q                        schedule.at$createAction(0, actionGroup);
  b4 \7 d9 n& m                        schedule.at$createAction(1, actionGroup);( S3 `5 e2 G1 q7 Z( s
                        schedule.at$createAction(2, actionGroup);
; S4 {: ^  v, d* J7 m, b+ b$ u$ C  D' P
                } catch (Exception e) {$ w* p% }, m1 [! I- I2 x& W& q% S
                        e.printStackTrace(System.err);
# i7 \: B' H( j                        //System.out.println(e);
/ F8 x, @# K5 V! D/ t" Z& A                        System.exit(1);. o) \0 R, H$ L  n; @. ?( o8 O
                }  }5 }" J: e! p4 h& p4 P

/ P% B( A) @' Q8 O& V* U- z: w" d7 z
        }
+ ^9 U: U( @" V  Z1 _0 H3 A6 J  y5 x
        private void swarmSetp() {
# ^/ o# j; s( f9 g                list.addLast(new Agent(Id));
+ f  k% X0 P! O1 \8 K9 q                Id++;: h& U' E; c. r# |
        }
6 u( `$ ^% o# O; M6 \5 V. M' v  X0 A6 H0 ~  ^
        public Activity activateIn(Swarm context) {& r0 {8 y) q/ x, A; }! w( J! Z+ T
                super.activateIn(context);
& b) M" r) M5 `' c- C                schedule.activateIn(this);
6 a3 f4 S3 d. d& H* J0 Y+ \                return getActivity();5 x1 u2 |- Z: S0 n. @* \
        }
; M. E1 t: G9 O8 `4 l
9 @- V: F' W* O; W        public static void main(String[] args) {
- P7 q4 B' H( r1 t% r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 g$ S8 m& b- ^; E& q% U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  ]9 }4 q% ~7 r( w& N                swarms.buildObjects();
9 f! x( ^5 e/ n5 m8 A                swarms.buildActions();- \  C8 X9 {; B2 `! Q
                swarms.activateIn(null).run();
4 v, e* _/ Y; q' C, r1 N        }  j6 R* T7 J. W& x- d6 ]7 i

1 I! A- F, |8 I5 A0 n% Q; h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 18:12 , Processed in 0.019129 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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