设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8266|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# m" s' @. X, K/ p& u( A" E7 v
# m, f$ F+ t( W2 p& e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 R, y) p. N; ?3 V1 F9 z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- z3 L7 I1 c. _7 I3 C# e) ^  L1 E
swarm.SignatureNotFoundException
6 h# b0 Z4 ?* {. p8 H2 `        at swarm.Selector.<init>(Selector.java:76)
1 ~" K( G3 F+ K6 p  W- |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! G* C6 I: i. `7 h( p- g        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  [$ k8 b$ M9 H, R+ L
( w$ r/ U- N# \6 g) p
+ L4 x' I* K  Eimport swarm.objectbase.SwarmImpl;4 D$ l0 U0 @" s( @4 _$ H
import swarm.objectbase.Swarm;
$ G; L' \& j' h3 k7 _8 Simport swarm.activity.ScheduleImpl;* r5 g4 d% I- F3 c7 U/ m5 J
import swarm.activity.Activity;% J3 Y& I: V3 @7 T0 V
import swarm.activity.ActionGroupImpl;
' k# V5 g: V" R7 uimport swarm.collections.ListImpl;
8 u& W7 `' d( j" D! o* r, j* n# z- fimport swarm.defobj.Zone; + E1 o$ }2 [# V! Y( L
import swarm.Globals;) C7 M' |. }' V' i
import swarm.Selector;3 \% c7 }* d/ E
import swarm.activity.ActionGroup;
8 y0 o! J( k; P: m# o8 k2 Lclass Agent {
: J/ y% v4 N1 f+ g9 m8 n$ `6 q5 w        char id;
& l- z0 \( u$ D4 F3 g$ e7 W9 U$ q2 n7 E" O) v) y
        Agent(char id) {0 I: x( y4 N* P# ^) n' i
                this.id = id;
( K2 G9 t; {/ b; `9 e" g0 _' n) F* j        }
2 O, X: F% J) s: f% t4 y
1 c, Q. Q: B6 g1 L* i* g- f* J        public void agentStep() {1 _4 M: O! d1 Z; C& u
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ ]$ z* T5 u* ~* J8 f
        }
  K% s9 l/ s+ h5 n* V0 \/ H}; Y, T! x2 ~, {# C
; F  a& {, x$ U9 }9 `7 U4 t2 `; ^
public class ActionGroupDemo extends SwarmImpl {3 I0 M. o8 Y, X, E
        ScheduleImpl schedule;* [! ?. d( z$ U  N3 L
        ActionGroupImpl actionGroup;( k5 I. X1 J! Q( K! F
        ListImpl list;
7 B: r! z: W9 u8 s7 d        char Id = 'a';, M- y  ^  G4 a4 ?5 W
5 C# y% L% I5 j% O9 i  |% o0 h6 t
        ActionGroupDemo(Zone aZone) {
& k- [8 }. j6 ^                super(aZone);. @4 v; h" i: J0 _
                list = new ListImpl(aZone);$ I2 ?4 U' e. b- L
                swarmSetp();
. d  [) ^. E7 Y1 i- I4 `8 R5 `                actionGroup = new ActionGroupImpl(aZone);
( K" R, M  |0 A. w) M                schedule = new ScheduleImpl(aZone);# D$ B: q0 U( l+ b
                try {: n7 ]: J0 m* h/ i' A2 e
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 ~# r+ s# h6 W  ]2 D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' O- j7 k# ]+ T6 u9 O
                        
3 h" C8 }& b1 k' U$ g4 d7 b                        actionGroup.createActionForEach$message(list, agentSel);9 ^6 f& B: g( d$ P% p
                        actionGroup.createActionTo$message(this, swarmSel);0 V. N; R. _1 f- e' x& t+ E
                        schedule.at$createAction(0, actionGroup);
# L' a" O. x; W' @$ m$ N                        schedule.at$createAction(1, actionGroup);
5 P6 W$ s& o! @* r- p8 d, t" p* J3 T                        schedule.at$createAction(2, actionGroup);
3 q0 d3 F9 v& n9 E8 K* \2 N9 v1 p$ o
                } catch (Exception e) {
, P7 l. \0 X5 d, b' S5 F                        e.printStackTrace(System.err);
" z- i3 _1 Y, E3 k                        //System.out.println(e);
: M+ M% I8 n7 a8 l2 P& h, N/ N                        System.exit(1);
8 w& w; T  U; h& @1 K% D                }
7 q# z3 U- F. R6 j7 T) z1 r( }* P' ^# _1 k, Y7 F
: k$ l# x5 m' d4 `3 C/ d% W9 C: Z
        }* N  u) K7 K. l; U! S* D6 d: V0 K. I
/ P' n* m4 m- K; e5 U
        private void swarmSetp() {
/ E8 c* J/ R' N                list.addLast(new Agent(Id));; X2 ^4 k+ O2 c/ W3 I- b; |
                Id++;
+ r4 s" k" G; n5 }$ p9 d        }8 N" U4 H1 ^  C6 ]; }3 s: D
% N9 m) T# F  _9 Z; f
        public Activity activateIn(Swarm context) {( L7 }! z5 ], y3 G! \! V
                super.activateIn(context);
) }3 l) t. }. Y" d+ z                schedule.activateIn(this);; C0 a. O' K% T- Y" N7 z. e
                return getActivity();9 K. G) A6 E$ O$ y1 \: }! K1 X
        }
7 w; H( p# n% o$ E, Z# [# X, {+ J* _2 V' E6 o- L7 e" B( k+ d" h
        public static void main(String[] args) {, x& G( @  }& X2 r) e, ?4 N5 n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ X3 A1 t7 I2 Q! _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  Y8 [9 T& a: [% F" e                swarms.buildObjects();, y) T# z7 Q2 Y! z6 N4 l
                swarms.buildActions();0 \/ \& b% g" k) f7 M
                swarms.activateIn(null).run();
6 M% P8 B9 Z% a. h$ E7 u4 h* d        }2 C- t3 m) B/ w) G

& O. y* ~" `# x' F4 o0 T8 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-5 22:19 , Processed in 0.020631 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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