设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9188|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 {4 T; l# a/ |5 H. I" P0 E

$ g: A( K* v; B3 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 [2 [4 ]3 x4 @1 d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 p; {* C: u) v: o' D$ Xswarm.SignatureNotFoundException, P5 P# S/ W% x$ y
        at swarm.Selector.<init>(Selector.java:76)2 L+ U0 w  s) C3 P
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# u) N  p! Q1 ^! _9 a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# J" ^# ~' p8 v4 v) k: {  {
) Q/ H" @- E& ]( W1 }
6 l! y6 L+ o- y# W# W, kimport swarm.objectbase.SwarmImpl;
$ ^3 Z6 [& j/ ^. u. P4 |import swarm.objectbase.Swarm;
- ]! |9 I1 v8 j# cimport swarm.activity.ScheduleImpl;
% ?; E7 j6 @% q5 ?- T7 d9 q" zimport swarm.activity.Activity;( q  r& f, a% r; c/ {
import swarm.activity.ActionGroupImpl;
8 j" k! N, l# gimport swarm.collections.ListImpl;
" u: k2 X$ A1 g9 jimport swarm.defobj.Zone; / {' Z1 T% ?" R+ h. s5 Q* G. Q
import swarm.Globals;
( \* I' B/ {, k  ]import swarm.Selector;/ F; c! {$ n! W
import swarm.activity.ActionGroup; % N9 K9 J, k" I
class Agent {8 v% c  Y1 u* \
        char id;& a0 y: h& Z, ~) ?( V

+ y: E4 b0 _2 g: `# b1 h        Agent(char id) {2 T) k% v) }' Q
                this.id = id;# @5 N) v% j0 M6 @4 [
        }
) P6 j0 j4 m) z7 L7 F! w% X% @) c
0 L# c: S7 b2 g% p. L7 e        public void agentStep() {* ?/ m1 s' c( w) D. A# d4 r
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 n6 I6 {. ~& Q* C7 F8 [. l6 [        }
) L2 x' C5 M- H7 Q}
5 r" q2 \' f- W: c( K; [
$ K  T: R7 ~% ]) Y* {public class ActionGroupDemo extends SwarmImpl {; H( |- s0 v  r5 `
        ScheduleImpl schedule;% i% F5 e  R. u! K: ]& t" b5 Z$ i
        ActionGroupImpl actionGroup;8 U1 }) |0 S3 V; D/ E, k) j
        ListImpl list;
. y. h9 D- s* t  I5 h        char Id = 'a';8 @* d0 P- {; `. N( K; E) j
% }- E) f3 w; [, x; K
        ActionGroupDemo(Zone aZone) {5 U1 Y+ e& v' a$ G7 ~: i
                super(aZone);
2 _: x7 f5 i0 x, M* X+ c                list = new ListImpl(aZone);
+ B& |: `1 z& V# {, \$ y+ L                swarmSetp();
, `1 ^7 r, Q3 w$ v9 V" S                actionGroup = new ActionGroupImpl(aZone);
0 b. u) W/ N2 s$ x7 ?' d! h8 G                schedule = new ScheduleImpl(aZone);5 ]# B$ x" b" I. y+ f/ ?+ U$ d
                try {
8 z0 u4 B& e  J2 i. w; [: k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& U& }1 u5 L6 A/ d  |& E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 a- Q" P, d" e8 h1 @
                        
% ?9 N1 L3 j8 q. a$ U% p# E# V                        actionGroup.createActionForEach$message(list, agentSel);, u6 ~/ `( d  c) N
                        actionGroup.createActionTo$message(this, swarmSel);; f2 f. }9 U* T( t1 z" o
                        schedule.at$createAction(0, actionGroup);
' Q) P* |1 f- q' T  G6 A                        schedule.at$createAction(1, actionGroup);' ^6 p& f, v. T
                        schedule.at$createAction(2, actionGroup);6 |, ~( K6 Q, a/ f) v7 R+ H
/ s' Y9 v8 ~& I
                } catch (Exception e) {9 _+ f) J' h% u: W
                        e.printStackTrace(System.err);/ y# B/ s9 \. ]* a
                        //System.out.println(e);
; V% M# \- g9 }                        System.exit(1);
6 Y9 A* o) H2 \, F7 {                }' \: ^# W. L! G* D+ T
' L' S9 |$ ], ]. P  n

0 F5 r# [- T* R9 D; S        }1 o( H4 E& r" ^) {% L2 ]

/ V) L! R0 e/ O5 `: Q        private void swarmSetp() {
5 e7 w# U8 n. W& b! _                list.addLast(new Agent(Id));
; j; y# h# e; Z2 j# Z                Id++;% B2 K1 l9 R+ f' x& u0 n# x5 u
        }: Q3 \8 K  t) o. }& |/ G, B

9 k+ O! f8 t# v2 H        public Activity activateIn(Swarm context) {
; |/ o$ H0 [. E& V8 E: A                super.activateIn(context);6 g0 F3 F6 ~! k7 ?& }3 u+ {
                schedule.activateIn(this);
+ n2 L0 j3 a' O                return getActivity();, G8 `! g" E" r" o" r
        }
" k/ K- p* ]' e  Q( T% M2 t/ O/ a, h* Q- K: o: t
        public static void main(String[] args) {, d, y4 J6 Q- O" {6 G0 |8 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 l2 R. z2 ]8 s# i; R$ W4 T. i: f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 Y1 Z+ q& i& a9 }! S                swarms.buildObjects();
+ N/ G! m; U+ p" A                swarms.buildActions();
/ j5 d9 s$ B, q! h: r* c: G& N                swarms.activateIn(null).run();
- k( G( m$ [' F1 G        }( m$ A& {: B& T0 Y, T* F; E7 o, k
5 D& j/ h4 i4 a% K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-3 22:37 , Processed in 0.018129 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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