设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9909|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 Y, M: @) ^4 Y6 X' e. P4 j3 V) R. R1 c/ n+ r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" O: {! }  w& X, F8 \; V; q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* G3 z8 ]( q+ E7 }: n$ F
swarm.SignatureNotFoundException
9 k* O+ \1 c' B+ t5 V$ t% B        at swarm.Selector.<init>(Selector.java:76)
' c/ q. t( Q+ W9 x0 X  ]2 P2 ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: {# I% h0 p- ^! c) S4 y7 c        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 u+ I! h8 x( z
& r- i8 y  |3 b5 y
. Q5 K/ \8 L. f( h2 G5 Y
import swarm.objectbase.SwarmImpl;' s) w/ ?4 T( ]" ~' A" f
import swarm.objectbase.Swarm;$ \' U* _/ p7 f+ K- r( y) p/ w
import swarm.activity.ScheduleImpl;
, J8 p; ^  G6 U+ ]7 Iimport swarm.activity.Activity;$ P- c7 g8 w" ]1 G
import swarm.activity.ActionGroupImpl;
& f: t9 V' B% ]import swarm.collections.ListImpl;
6 _, t1 C) F7 a' Q* X6 A2 Jimport swarm.defobj.Zone; ) E$ ]' r- z! _, W8 ^
import swarm.Globals;& \  ^! c, t6 O6 j7 G. F
import swarm.Selector;
. @$ }  Q: Y; ?8 m  `! L- [import swarm.activity.ActionGroup; % a( J! ]) b- F3 a# D+ u
class Agent {
3 Y' D* Y& }" W! b, V7 B        char id;
% o- T$ t+ ^( E3 l' j$ p0 |
7 g6 f. s9 J, u( f        Agent(char id) {
% u6 t0 b- h' `# T# w+ L                this.id = id;. h9 V8 ^$ B2 T  x) I% p
        }( {8 E' K/ v  h9 L- e* X) Y
' Z2 P8 }& p4 E5 e+ l3 E
        public void agentStep() {7 d% W7 v$ A- H- Z& o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 F& J2 l* g7 J9 F        }
1 z9 F$ e5 T6 {3 m4 @}- j3 W2 Q  Y: l, v( Z
: j* e3 a( z- ?
public class ActionGroupDemo extends SwarmImpl {& u  z. ], x1 @# l: ?6 g
        ScheduleImpl schedule;
! ~+ G# k+ E& f8 ]        ActionGroupImpl actionGroup;
" z  ?9 c  b- `7 X; y, ]        ListImpl list;
7 f$ ~" e- Q) x8 k! A. t        char Id = 'a';
- N# a1 N) t+ B0 v6 l; m
6 I, b( y6 ^" o% N! ?' U        ActionGroupDemo(Zone aZone) {
/ I- H0 z# X4 ^                super(aZone);$ n* G* ]( G% }' u( r
                list = new ListImpl(aZone);
: Q7 J1 H% l( @! V" T) S2 w                swarmSetp();
* ~% d9 J$ O7 C5 q                actionGroup = new ActionGroupImpl(aZone);
1 ~( D  W$ O" W- \) N                schedule = new ScheduleImpl(aZone);4 w  @  }7 X' f6 S' j' P6 Z
                try {
1 X; h, a( S- z; o. D; Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# H: o7 P  M9 k$ |* L, f4 x, |                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! \! X  r2 ^( {7 l! @
                        
8 X$ {6 E9 i0 |                        actionGroup.createActionForEach$message(list, agentSel);7 n& L- p+ \" H3 h4 H
                        actionGroup.createActionTo$message(this, swarmSel);
* B5 D# s: T5 Z& A9 v: K                        schedule.at$createAction(0, actionGroup);4 C" C" J( m5 y6 I  I" N
                        schedule.at$createAction(1, actionGroup);
; Y, y1 q3 o$ S' F9 G/ b                        schedule.at$createAction(2, actionGroup);0 J  f' Y& L1 g* b9 _6 O

; `& Z' v8 e# T) H& h3 Z( N$ i                } catch (Exception e) {
" K: D4 L1 C* U% A                        e.printStackTrace(System.err);
* e2 I' d4 c+ |  g                        //System.out.println(e);
, w3 B) m" _- c" ~& {                        System.exit(1);
1 ]' c- T) [4 e                }0 p7 e  P: |$ _
. V! ]7 Z3 w5 Y6 @

0 x. _9 [8 x' u' y6 c3 ~5 R        }4 c' d8 h. S% R: t
2 }/ [9 H5 \/ N3 c
        private void swarmSetp() {' w# V& n" }/ `& z8 D3 [
                list.addLast(new Agent(Id));" k9 T8 H1 v) u4 J. T
                Id++;
; M5 l' O  A% @( e: A        }" I6 d' R+ ?# `

) `# L! g9 a3 W6 ^        public Activity activateIn(Swarm context) {1 i8 `% L+ p1 R8 @/ _
                super.activateIn(context);
6 `& }( s8 @9 w* C$ J3 r2 m; j                schedule.activateIn(this);
" I+ R, l% x' R1 J+ x$ k2 q                return getActivity();
" Y1 q1 V; e7 |        }
8 j. O% V8 D- I+ _/ [
6 i; f  d  {& F: F6 z        public static void main(String[] args) {- K( s" [8 q  E, o+ S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# j6 Y+ Q/ f0 y" W2 q) P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% K: ~2 T# j# G1 t" B                swarms.buildObjects();: i  `7 d: k' [, k; t6 {
                swarms.buildActions();
/ \3 F- m' g- y. F7 W$ Q9 k                swarms.activateIn(null).run();
; @0 N7 ?( o$ p+ j        }% \# |* x+ [( z# X' k6 W! R% z

" ^3 }5 X7 A6 [. a$ ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-27 09:55 , Processed in 0.014508 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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