设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7142|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 A9 \! M: c& I4 I. y

( A, ~, z; R& K* H2 G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ W7 e, T# ?+ L% r) P9 l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% o& {, H$ y" T5 C
swarm.SignatureNotFoundException; Q; v5 m  y& K
        at swarm.Selector.<init>(Selector.java:76)5 ^3 M4 [- c/ N, p3 [) Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ T  a/ Z: ^1 E+ c# j6 W1 E' h        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* [' E7 Z2 i: Z4 Z
3 X- d" \! X  o3 ~/ @9 e6 B( L, Y: @
import swarm.objectbase.SwarmImpl;
" I8 |6 s. H9 [& Iimport swarm.objectbase.Swarm;
* ]% E& N" W$ J7 a; }) o" m& M$ @import swarm.activity.ScheduleImpl;
6 i7 K- R) ]# s7 ~$ P, T5 oimport swarm.activity.Activity;
3 p' `( T! |% r' ^3 Rimport swarm.activity.ActionGroupImpl;
; ]+ O( {" _( Z8 timport swarm.collections.ListImpl;
( J1 h0 V% ?6 Bimport swarm.defobj.Zone;
+ @1 T. E* R+ }) T9 P  ~% ~# qimport swarm.Globals;$ n& a' D0 [- w# X
import swarm.Selector;, O  m" V7 s3 R- {
import swarm.activity.ActionGroup; & w2 |$ Y- [/ e3 M' b9 w+ h
class Agent {! S% [; Y# z9 `* G# ^6 i- @
        char id;
5 k' d) N2 O& L: `2 t9 |& V: {! H) `0 v( R" y. }9 L9 C
        Agent(char id) {
& B$ }8 ?1 {6 C% L0 ^2 b                this.id = id;
- x% ^3 S9 ?- \) H        }2 p- i  n  X) v) u/ t+ y
; t, x9 v9 U* {$ J: S  z
        public void agentStep() {( q  g9 V( M$ J9 v0 [. j& H( B
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# }3 [* T3 ?6 x. i# u% q  h) h        }' L& W# s$ y% c* }1 J9 A
}
1 [$ w4 c0 q. x, h% l8 o0 ~! ?' Q; m( s8 t- ]# u6 g% ^8 {, o& b
public class ActionGroupDemo extends SwarmImpl {
5 H8 J' v; e" z5 R( N$ L2 a, B        ScheduleImpl schedule;2 w: q$ V" ?3 N. \+ M* N
        ActionGroupImpl actionGroup;0 p/ K* P$ d1 {( b# X- p9 A
        ListImpl list;
  D5 U" g2 t5 C! Z5 Z        char Id = 'a';
3 H5 M: y; L" q  F4 k1 r- k4 r/ w4 ]
        ActionGroupDemo(Zone aZone) {, h# K# h) G  e" B3 k& j
                super(aZone);
0 P$ }8 c/ Q" W, x2 l                list = new ListImpl(aZone);$ [  G2 K& o+ ?
                swarmSetp();8 [: ]7 C" o6 \# f* ^( r: {
                actionGroup = new ActionGroupImpl(aZone);
8 G# F$ V2 K) z$ ?9 l: H6 K7 ^" T* s                schedule = new ScheduleImpl(aZone);+ F) L6 w' m  j1 w9 N: ^
                try {
8 Z$ J3 A0 r8 ], c9 ^- O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 u4 s4 s; ^# @3 f; _1 V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 H* H/ t" G9 K/ W8 }, `
                        
+ U2 ?; y7 z( N0 h$ I; K  H$ T- m                        actionGroup.createActionForEach$message(list, agentSel);) A9 A7 \  Z) a' V3 \7 C
                        actionGroup.createActionTo$message(this, swarmSel);
1 O% W3 L! B0 d2 |# i1 I6 u                        schedule.at$createAction(0, actionGroup);4 A& V6 ^7 {. M' e+ M8 l$ a. s/ g
                        schedule.at$createAction(1, actionGroup);7 K7 F7 V( J# I" \" I. e
                        schedule.at$createAction(2, actionGroup);/ R; h5 q8 g) _' C9 W
# h8 r& N# b& k$ J
                } catch (Exception e) {
; m' U; @# H2 u$ A7 f' x, I0 ]% H                        e.printStackTrace(System.err);
" }1 ~7 P+ f4 f9 L. g4 r                        //System.out.println(e);7 @3 `0 B6 s* P9 p) D+ v% N, u
                        System.exit(1);
7 H% m) s! @9 z* D% M4 h; s                }
* l! e& u& S$ m9 F' n( I7 j8 x1 `' T& L) v# v

; d; s5 k. X, j' G1 X6 V4 C6 H        }
. m) x3 z) A! x$ P5 G! J, `  X, L+ L  c, Z
        private void swarmSetp() {
8 n/ z. [" U& r% F; ?/ U& U                list.addLast(new Agent(Id));2 {$ E6 o- N' G8 `- }
                Id++;+ c4 L' V- D+ c- q
        }8 C4 _- i' a% X- O
1 W9 z% O! G, x% _# r. _; E1 A) H# |$ _
        public Activity activateIn(Swarm context) {
; V/ L& x: W$ e  X- e* x, I                super.activateIn(context);
) k6 ^9 q" e# M7 Z  B                schedule.activateIn(this);& ?$ p' B4 G3 U+ @! q! J6 P
                return getActivity();6 R- W% q' ^5 j$ D& e9 t
        }8 h4 m% R6 b8 y6 ~
0 E/ i% P  p; f* C" V2 w
        public static void main(String[] args) {
0 {7 M; ^1 H. b+ x0 f, M                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; X6 M8 a, \$ `7 C  D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' _8 d) O5 y* ^# _. b3 M                swarms.buildObjects();% _, d1 [4 v0 n2 p
                swarms.buildActions();& w2 }* g; K. L* h
                swarms.activateIn(null).run();
: @. ]& ?: _+ X: N2 S  F0 |9 C        }
% t1 I6 p8 K( b# ?7 i0 E! Y! C) G8 ~* y7 h$ i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 20:41 , Processed in 0.015216 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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