设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5196|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ^# R# r. @2 Y5 C1 V+ Z5 s$ d! T, X% q) q) l2 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( d* G; O& H3 n. H- G1 a1 J; c/ Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: g# ~) U% |2 S3 P- g1 \. w/ }swarm.SignatureNotFoundException- d" T! J! M1 [, o1 L
        at swarm.Selector.<init>(Selector.java:76)
6 v5 s+ V& l; r6 W% n6 y2 I$ `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); C% l1 [1 Q+ q' ?1 z& n7 k' W
        at ActionGroupDemo.main(ActionGroupDemo.java:67): Q% Y, v) D1 z' o0 t, D6 t
% h8 r# a% |+ b" ?: [

/ ]- W# v0 C9 K# [* [import swarm.objectbase.SwarmImpl;
$ Y* o7 R9 \( x: Rimport swarm.objectbase.Swarm;( S- N# |  j" [& W% I! X6 j& P6 ^3 K
import swarm.activity.ScheduleImpl;0 ~7 Q6 ^) ?( o: e2 {
import swarm.activity.Activity;8 y1 D/ n  v3 x0 {9 l; I/ O! r
import swarm.activity.ActionGroupImpl;. R. h  c1 L8 w9 y, T# K
import swarm.collections.ListImpl;
6 J+ J5 R: w: c, jimport swarm.defobj.Zone; & A; c. X2 X$ l- B% H
import swarm.Globals;2 s) J& c% m- q# d# V
import swarm.Selector;
4 l+ a  p" s: B: g) Q8 Q* Eimport swarm.activity.ActionGroup; + l# T: W  Q& V# v- E- G. @
class Agent {
$ i, K! b# B! L3 I4 h        char id;0 [4 t+ q3 q- E; r
# }" N8 Z4 K  ~& Z6 K
        Agent(char id) {0 ^. S) c" i0 e
                this.id = id;1 a; Y1 w4 ?+ [. \/ I1 @
        }( g# J0 n+ F+ Y) f% q

# q3 h* A' L% G. H        public void agentStep() {) a2 K' l" q8 L; H! s0 T& `- E
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ ~3 O  o9 S7 [8 M; x
        }
5 F/ ~5 ]$ X: ^1 x$ o( \6 E+ M% k}9 g9 B. I$ Z7 d, O4 h0 v
, C! ~3 Y+ j2 v6 l/ z8 g
public class ActionGroupDemo extends SwarmImpl {! K1 q) o2 ]# K" x6 u1 Z
        ScheduleImpl schedule;
( n9 g3 |# r) ]5 }$ y- H5 r        ActionGroupImpl actionGroup;
' {! I( Z9 q7 j; i  z        ListImpl list;
7 j  E7 A/ v# r9 H( f( w        char Id = 'a';
! W" ]2 H  G4 U$ R2 P6 @( \8 n* O$ o' a
        ActionGroupDemo(Zone aZone) {
  O0 u# G/ w: J& c( ]( n                super(aZone);7 M, D" j% z- x& y' V
                list = new ListImpl(aZone);
! t3 h% Y7 ^: o  X/ _                swarmSetp();6 S* F. x( x+ D' x/ ^8 |3 h
                actionGroup = new ActionGroupImpl(aZone);
& i5 |4 P& U, ]. u                schedule = new ScheduleImpl(aZone);
4 ^, m' T+ U* D  z7 k                try {
* k& i* S$ X% `/ U6 g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  @' N$ E5 G* }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* \' r+ Q. D# O3 W! V
                        
) A0 b, h1 v1 K; I; q& R& T                        actionGroup.createActionForEach$message(list, agentSel);. Q. R4 T! ]2 X4 X- x  e, t
                        actionGroup.createActionTo$message(this, swarmSel);& |8 L+ @0 N" Z0 X
                        schedule.at$createAction(0, actionGroup);
: R  \4 m0 w6 p! q7 v" g; A  Z                        schedule.at$createAction(1, actionGroup);5 V' O' i$ }" p+ ~
                        schedule.at$createAction(2, actionGroup);
! N/ T- r" \0 a, V2 X
) d5 B  v1 t( i; G  ?. s' L" E                } catch (Exception e) {
2 j# \# _. i! W' d: O& j6 m6 m                        e.printStackTrace(System.err);3 Q9 R, L+ M4 v
                        //System.out.println(e);$ T' e" n4 w- e* R0 F
                        System.exit(1);
7 l& s3 |, _: s                }' h+ E" D8 I; c. l+ p& b: A
) g8 `# {' T2 ~9 O8 J# [% N1 @

/ F) m; G6 z8 U, t! P% ^$ e! `! b        }
! H4 K, c  t" i, w8 ~( d+ a7 ^4 ?# p" i6 y
        private void swarmSetp() {
, G* b7 z( g. |0 M. o                list.addLast(new Agent(Id));1 ?! G) s( X& g! X9 t, Z/ w+ h
                Id++;& R: R  i( ~  G; o. `
        }: h( D# M: l! y/ h' b& M4 y0 G
& [2 T# ?# F  J
        public Activity activateIn(Swarm context) {0 T9 {% D+ @$ ~2 h- G# a: M& U
                super.activateIn(context);
$ T& t/ w, \. ?/ z4 r7 Q                schedule.activateIn(this);
, d/ }6 X+ t# b7 T: B                return getActivity();3 G+ ^5 ?, {/ N6 u
        }* ]4 a# ], m/ Q
! n+ t3 q$ A, T
        public static void main(String[] args) {0 a6 A- b& t6 H+ v: s5 G: z' R9 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; b' i& Q) _# W. }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 S5 b5 n3 b: k                swarms.buildObjects();# P! r6 z4 U5 u  l+ h# O% M* \
                swarms.buildActions();6 z! O( m. W: u' D# w  G9 D. f
                swarms.activateIn(null).run();; b+ W' `' J$ J  f5 u; c
        }
" d7 D2 \8 H% }1 S1 t# f  m& b  q# A- N5 ?8 y( J: C! T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-28 13:49 , Processed in 0.023077 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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