设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7628|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 y" N0 [% w2 J3 O7 L

" A, @7 n2 T5 ~4 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ o3 \$ G9 A: |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 t$ R% v- g) @  y. u
swarm.SignatureNotFoundException
6 e4 L) M- M! |% V( E* o; M        at swarm.Selector.<init>(Selector.java:76)/ u" M) Q* L; I0 B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% o  s6 B5 N5 K/ P# j& A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 B0 ]2 p- _+ g: u  W

) \3 h5 ?3 ]0 P2 B- X1 {9 M; E  X) t) y& p
import swarm.objectbase.SwarmImpl;
# a. X  U! `6 h" p  s* |+ S+ Zimport swarm.objectbase.Swarm;5 s; S3 F# ?- z0 T9 D; i9 C* ]) l
import swarm.activity.ScheduleImpl;
- W3 Y2 N8 o* Z( l# ~import swarm.activity.Activity;
: O2 a4 C4 a! `* aimport swarm.activity.ActionGroupImpl;
( ~- c; z2 r8 s: B# S: Uimport swarm.collections.ListImpl;: K. Z2 S1 r5 P, L  {& U
import swarm.defobj.Zone;
( X4 [+ D8 n7 K8 Simport swarm.Globals;4 S( m+ [$ I3 \8 [) H# Z( \; p
import swarm.Selector;
3 l  D& |+ p, o3 E+ M/ w# m! `$ ^import swarm.activity.ActionGroup; 3 T6 A, b/ T, A- [& A
class Agent {" q) ?( Z+ T% ]# q; h
        char id;
+ M$ A/ j- W; z4 D. z5 M9 Y# t1 _; n# `  n2 \
        Agent(char id) {
) r; z$ d3 s/ c. P+ b9 Z6 X% o5 T# V                this.id = id;
+ J7 Q; w2 _6 X# y        }4 U: _& X& F, e- u$ Q

3 T, H; c% [$ J; z  |        public void agentStep() {
, K& O* D/ o9 m! u9 `$ U3 a                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 S: W# H' B% D/ ]' p1 v3 i4 b6 j        }6 W9 ]/ y1 H. g
}
; q: ]0 @! r( ^, ~6 ^
2 a0 V: q8 Q  \public class ActionGroupDemo extends SwarmImpl {
/ _- m* v/ F( f* y' k) {: L        ScheduleImpl schedule;  a! P) a' x: o7 I
        ActionGroupImpl actionGroup;- S; w( U# ^1 C
        ListImpl list;0 s, ~3 c5 L& K  ?4 e9 R9 R/ V
        char Id = 'a';9 y% _4 J+ o3 i  j8 ~

7 n1 N" E7 U$ L3 j3 ?        ActionGroupDemo(Zone aZone) {
1 \  R) o6 i5 I                super(aZone);
* I! ~& i/ ?' H1 n5 Z6 j: k                list = new ListImpl(aZone);
/ [2 @7 ?% e0 k( j. }                swarmSetp();) A5 h# j/ i! ]; o( [
                actionGroup = new ActionGroupImpl(aZone);
2 b7 P0 c, y& i# b                schedule = new ScheduleImpl(aZone);4 g0 \0 W/ I: [8 c: n2 o
                try {  U- `# \/ V. A6 ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% z3 n$ o4 {1 }" t" c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ j" |. I4 j" [1 G3 d' @
                        + }: {# E, C* @
                        actionGroup.createActionForEach$message(list, agentSel);
: C" |* ?) ~# s; V7 u                        actionGroup.createActionTo$message(this, swarmSel);
; F) T- S+ J6 d/ G& c7 d                        schedule.at$createAction(0, actionGroup);
+ B2 a* @5 c% l4 H. g0 G/ e                        schedule.at$createAction(1, actionGroup);
# c. q# z! H3 o2 h+ j0 G+ f  c                        schedule.at$createAction(2, actionGroup);
' [3 V% m) v" Q6 w2 J  @+ g0 p5 a
                } catch (Exception e) {& P2 h8 N- P+ i* x/ N* X4 J" D/ H
                        e.printStackTrace(System.err);: s% P& J, C; Q: k! B
                        //System.out.println(e);
& [) q6 @3 z& U0 l) S9 o" O; l                        System.exit(1);
0 B* Z0 l% x) b                }
- {! t. j7 v& }+ Y5 b9 G! r
* v: K# N. @! Y! T1 Z  D2 O4 r1 M' i; v3 I& j+ E
        }+ f7 R6 R" I% s, V

& J% Z$ ^8 j3 A' @7 G        private void swarmSetp() {
# u6 c% Q: g2 E  Q9 }5 F                list.addLast(new Agent(Id));
2 U+ g* f, X0 s& E" B                Id++;" M+ P# n0 G) Z2 l+ `  s
        }/ s" ~+ f5 L4 Y( G5 ]1 i

1 ^' t: ?* `7 {        public Activity activateIn(Swarm context) {9 z! ?6 u8 w4 g! I
                super.activateIn(context);% P2 D. Y9 C) y: P1 v0 c
                schedule.activateIn(this);
( S/ m1 ~* V1 [# @( `                return getActivity();
, N' u6 o; T% `3 Q$ H  j        }
4 |: z1 U4 u4 S8 j0 g! g# u: f3 m3 d; Y4 l4 h7 `5 n8 S& V3 H1 |4 N4 F' T
        public static void main(String[] args) {
* }. j% q! M9 e/ R  R( n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ D% k) E* E$ R, z5 O: n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  r" ~* }* E! Y/ u! c                swarms.buildObjects();& o& ~- o: Q5 d# e0 \# h+ H( ~
                swarms.buildActions();
- C) c; c5 k( i0 U! K) X, b                swarms.activateIn(null).run();
0 g8 h; W6 w8 N( m; A% Z        }$ s& f. R# @8 ]5 k

) J* X/ W" \- Q& O: _9 M2 B. J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-9 16:11 , Processed in 0.019028 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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