设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12442|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 l; a; x6 K- M* H+ s+ X! }1 d* H5 S" ?+ a; `( I2 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. f, j5 M8 c1 Q5 r  p) ~: C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." N! y. a+ s4 q
swarm.SignatureNotFoundException3 k! b1 R& M: ]; Y5 c: ~( v8 y
        at swarm.Selector.<init>(Selector.java:76)- m4 U/ G0 X+ D; q( e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 ~3 C: [( s# |' ~7 y( v        at ActionGroupDemo.main(ActionGroupDemo.java:67)  \* Q" ]6 T8 d; W% j

4 M8 W1 i7 x/ z+ B' M+ c8 [
& J1 K$ ?5 N/ f- s+ C2 cimport swarm.objectbase.SwarmImpl;1 C. G2 @: w  c( Q# g
import swarm.objectbase.Swarm;/ j* I; J: l/ c# \1 }8 _2 ?! V
import swarm.activity.ScheduleImpl;
. f6 b2 ^" h, Q* S& simport swarm.activity.Activity;
1 P( s* _5 u7 t4 Uimport swarm.activity.ActionGroupImpl;
) F' N$ z& M9 N: Kimport swarm.collections.ListImpl;+ C( ]' V+ H! ?, Y, H( X# P/ e' x
import swarm.defobj.Zone; ) i( k1 _6 u3 ]% F; @# R
import swarm.Globals;6 W8 c' B% `3 G
import swarm.Selector;' a& z) E8 ~) R! e
import swarm.activity.ActionGroup;
1 _% H( P1 I! i9 W9 eclass Agent {
/ Z% H" y; h/ G# R' S        char id;
$ C3 r5 r+ N# n$ B' U2 x6 n# ^6 g0 E
% p) j6 v: j( b* b2 E        Agent(char id) {
8 C( Z; x* Z* j. t5 I6 b                this.id = id;: [+ e6 S4 p% V4 L7 |1 K1 X
        }
1 u- }. P& [: o3 j- g% Z
# p  z( J' X- T" k  q! m% D        public void agentStep() {4 w% Z* I7 x# _7 P
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ H8 F* p/ v+ J' P+ a3 D        }
) }5 O7 W  S2 D+ N% I* M}  l! C, M7 U$ ^. W) w9 z' W% h

, U& ]7 d  a9 a8 ]% P2 Ipublic class ActionGroupDemo extends SwarmImpl {
% [: B' P$ w- L0 k1 F" P) J; C/ E        ScheduleImpl schedule;6 D# D9 ]) X4 e/ n8 }8 G
        ActionGroupImpl actionGroup;! F" f% V$ e4 c7 w
        ListImpl list;5 U4 N6 G8 r; K: S  O
        char Id = 'a';' N, W& ]3 _9 I% a0 i; h

$ i" ]5 l' Y3 \, N) {9 O        ActionGroupDemo(Zone aZone) {
" h4 I2 \  L7 Q1 b+ c- S: I                super(aZone);
& D0 G. g9 W% [5 R' C                list = new ListImpl(aZone);( j) C( x3 O$ S* m" A* N
                swarmSetp();
! R6 L7 E8 s' ~0 \. j                actionGroup = new ActionGroupImpl(aZone);) B+ r6 w9 T! Q, u! L* x" V( t
                schedule = new ScheduleImpl(aZone);
* N6 R" Y. c/ e5 l' x                try {
7 G- O8 V0 J! x  f8 f. N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' M# F6 H5 K# j6 K6 N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 N$ J/ n" l; |) U# z8 a6 n
                        
& [$ ^3 c% }& [# w/ E1 \" T                        actionGroup.createActionForEach$message(list, agentSel);$ H+ e) ^7 L7 d8 F0 |4 f) @# y9 h9 O/ }
                        actionGroup.createActionTo$message(this, swarmSel);
( l, K, [' s0 h                        schedule.at$createAction(0, actionGroup);& L- G; e# c# K1 S/ ~, e( b
                        schedule.at$createAction(1, actionGroup);+ U9 e% q/ T  L
                        schedule.at$createAction(2, actionGroup);
# J& k6 ]  V$ Q+ o# A! A" @$ z% Y  {' C1 |- A! l. e. b
                } catch (Exception e) {
8 O- ~5 @. I  g- f+ v                        e.printStackTrace(System.err);
) `4 L2 l" M: p9 w* i6 I                        //System.out.println(e);
3 \0 o; H$ |; p                        System.exit(1);8 A. Z5 i1 d- B
                }
: m6 N! b- `+ P& ^& @) i* o1 O
& J1 ?0 x. `, n( T0 z. Z0 @- v7 T9 n& i
        }
; s5 n6 X, n4 ^9 M7 V7 U7 F0 V9 B  I+ Y. z- M$ y" s. D
        private void swarmSetp() {% |8 |! Q3 _# l  A' X5 _* l3 E3 g
                list.addLast(new Agent(Id));9 `1 ?7 d. c  N7 H* n) F) r/ w
                Id++;  k3 n- B4 ?% g( s# d+ [# k
        }5 s# f: l1 \9 a, S8 M- `9 Y

0 t/ M. U# p5 ?7 I( d$ D/ h! B2 |        public Activity activateIn(Swarm context) {( Y: l% X4 f' P; [/ Z6 `
                super.activateIn(context);
# N2 }0 d9 y+ c! a, J, J                schedule.activateIn(this);( r( S) m  {3 Y  g6 G
                return getActivity();0 Q6 w( s2 v0 |1 G+ n$ T5 P
        }
' P% \% d9 K6 V0 ~
% t, U5 U0 R: k: \" f        public static void main(String[] args) {
% [9 n' \, O* j! T0 G: y% F0 f  Z9 a+ Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 L. a8 |+ r2 L  ^! C$ T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! L# w- e4 ]0 q, C. E/ `% i                swarms.buildObjects();
0 [. A/ P' L& V                swarms.buildActions();
3 _+ E1 E1 q0 e+ p0 S0 M1 e                swarms.activateIn(null).run();
# ^1 ]( r$ p: V3 k! o: u7 N' K        }5 M' R( i3 u% j, s6 [' M5 }

( k' w3 Y! i3 V' ]" {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-8 20:49 , Processed in 0.012958 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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