设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10008|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 H+ I+ _0 D2 i' C( S% C4 ^
0 x# F, m3 ?& n* S3 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! C4 `- N$ C, w% z: y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 I+ ]8 y6 N4 aswarm.SignatureNotFoundException
( g1 S( K; G/ E: m* a, ]0 G6 f0 T0 Y        at swarm.Selector.<init>(Selector.java:76)
) k( S- z1 V% o0 v: e1 ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! i- S- j: M. m& t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. Z9 i! i2 R. i3 x( P# Q/ G: j# a+ T6 h3 d- g

. R* A7 V; V/ Yimport swarm.objectbase.SwarmImpl;
% z' s7 O$ f& G4 }8 i" dimport swarm.objectbase.Swarm;
' o7 G2 f% p* `! Bimport swarm.activity.ScheduleImpl;  X0 W0 a: S. E$ x/ G5 Q
import swarm.activity.Activity;
, j, H* y$ [* A4 `$ t/ |9 p  U, Cimport swarm.activity.ActionGroupImpl;' [: _: M6 L2 X4 a' Z
import swarm.collections.ListImpl;
+ G) B) ?1 X4 Y* T* Z# ^2 dimport swarm.defobj.Zone;
% k7 y0 I2 `% Y+ ?; L7 _2 e3 ?3 U' limport swarm.Globals;2 [8 ^9 R+ h' Q, t1 _  q7 o
import swarm.Selector;
+ u7 k8 K+ c' Q4 N# K3 f" f. Limport swarm.activity.ActionGroup;
3 v$ Q, H' ~7 L9 kclass Agent {, c7 B- G- h0 H. d9 p" o2 f+ e- [% m
        char id;5 V  x2 c, V3 U% q& C% P$ N  J
7 w7 O" i) s! T  M7 u8 X  x+ h
        Agent(char id) {
# `% P7 {& g% x9 S4 H' }                this.id = id;  ^% M8 i* c$ a+ a( G& [6 p
        }
- U( L; a/ P3 M# N
1 v% m* \! \; }, y$ @1 M. m- P        public void agentStep() {: Z( Y- e1 u6 ~! L
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 W9 ]' U" n: I: j: l        }
9 P. C& L3 k0 A* X! o/ N6 H+ F! ]" Y}
+ h4 c* z1 A6 o
' S! l" r1 [! [8 K+ }2 R* tpublic class ActionGroupDemo extends SwarmImpl {6 O/ m/ Q$ o" f8 ]
        ScheduleImpl schedule;( p2 \' ^( e. b: s; m" C; I8 J
        ActionGroupImpl actionGroup;
7 f) z/ Z" V/ E. {3 l0 C/ L        ListImpl list;
8 M, q5 B! A9 F5 O        char Id = 'a';; p. M- \- ^4 E7 |7 q

' Z. i) Z  @9 _5 S' M5 b) [        ActionGroupDemo(Zone aZone) {1 |. T2 E7 X2 F/ `3 a. o# j
                super(aZone);4 s, }( @; N1 k6 @( t$ G% k1 X0 i, I
                list = new ListImpl(aZone);$ @$ O, V- L; p
                swarmSetp();
6 V" y; u; V2 x5 o: |                actionGroup = new ActionGroupImpl(aZone);
0 g9 J9 e1 O& V$ D: W. U" T: C                schedule = new ScheduleImpl(aZone);$ ]' o2 i/ p# Y& a$ ?0 p  F( e3 [0 X
                try {! K3 C+ A/ u2 B0 I. g! Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ B' y( p9 o! O0 k  ~& S( K0 l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ F' F+ s2 e" {) l+ I% X3 u5 \
                        2 ^* ?# N6 Y2 g7 O% ]
                        actionGroup.createActionForEach$message(list, agentSel);
2 Z  w: A. K6 r8 J  C1 H  ^  f& a: F3 e                        actionGroup.createActionTo$message(this, swarmSel);
4 r( P$ N4 U& ?* g6 `( u; t                        schedule.at$createAction(0, actionGroup);( n. Z# h& N2 n
                        schedule.at$createAction(1, actionGroup);
, y" N+ F0 P  m/ i# b2 l                        schedule.at$createAction(2, actionGroup);. i) U8 P' M" q5 K9 N: b, m
# q3 _4 N7 t5 S! N( [1 g. T
                } catch (Exception e) {
% n2 r, I: Y9 m, {, @                        e.printStackTrace(System.err);
& w; H) }7 U6 O' |                        //System.out.println(e);8 g- y& h4 G: I0 Q
                        System.exit(1);( V/ l$ W2 d& t3 h. ?5 u
                }7 p1 c. V  f& d+ q8 M4 S; _, Z

" j/ v; @. u" _/ g& g( U" q% P  @
: d) O& w& W7 \" b# b        }4 t& l" p: q$ ~# M- e: X
8 ]+ g: U8 ?) b( b
        private void swarmSetp() {. J5 ^7 k: M5 w5 Q" X$ n
                list.addLast(new Agent(Id));7 E& L. Y3 P7 Y% o; ^$ X+ m
                Id++;& E+ y7 c/ p% I- s
        }8 \: ]) Z3 i, Q1 V3 Q$ l
9 ^: A4 Q, I+ {$ p5 A  b
        public Activity activateIn(Swarm context) {0 U7 k: c. m* {; Y9 j4 H
                super.activateIn(context);
1 ?  A# w; I- H0 H                schedule.activateIn(this);
; O3 J2 l& a; q' {* O7 u: o2 g% |                return getActivity();
& U( f7 O4 p% m        }
$ R( X" {; H6 }+ i- s- t9 V# e
" g/ ^2 `- l# [  u9 e' W9 B        public static void main(String[] args) {' g& t3 e" @! ^* ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 {5 E9 ^6 Z- H2 [5 C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. z6 g% p9 T7 ?+ i' x
                swarms.buildObjects();4 S- ]" P# A) s% j
                swarms.buildActions();5 I; Y9 k0 [$ W( U% h1 P* f
                swarms.activateIn(null).run();, M$ O6 u' w' _
        }
1 c2 v  T. D; P/ v& O# D* T5 I
$ n  U/ d1 E7 g  i3 S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-31 10:19 , Processed in 0.014361 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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