设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11167|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 E- z- X8 U% a9 I, F
/ \1 K4 h5 @6 j$ G& U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ K! R1 n, T1 r, g9 \& C7 f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# N! k: N8 ~, N) Z1 }. Y, _& e
swarm.SignatureNotFoundException
, }: J) W! n; s4 L4 B        at swarm.Selector.<init>(Selector.java:76)
% z9 T- k& s" j0 }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 P5 Y9 M2 Q8 l1 S, @9 @. K        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 `& D+ D1 \( A2 K% `. S$ O; z% p) q8 p+ V8 M

5 A/ }7 T. ?  ]) t- d0 Bimport swarm.objectbase.SwarmImpl;
. S7 h" }. [, t' I6 I, Jimport swarm.objectbase.Swarm;
0 H" ?& Y: |$ L- H) Y* H" l0 U3 rimport swarm.activity.ScheduleImpl;
0 `" t1 N# @% ]2 |4 j' K% cimport swarm.activity.Activity;
$ v" R- o: ^. }; [  \5 T+ w" J3 Fimport swarm.activity.ActionGroupImpl;
% a5 L- _$ P) S; h6 r& yimport swarm.collections.ListImpl;" ~4 m: r% z) w) A5 T& ?
import swarm.defobj.Zone; 2 g- C  L  Z9 l5 R$ w
import swarm.Globals;
' x; S/ k0 ]: b2 B/ R5 ]" bimport swarm.Selector;
  }# v, X5 t% d1 n  V3 a' }import swarm.activity.ActionGroup;
* E6 p9 C. _( k/ `class Agent {$ H+ B+ A' O* @" W) d
        char id;
8 z3 B7 H$ ~5 @" F. ^, r  c0 x8 [$ Z2 n% l
        Agent(char id) {
/ _, x: C* a; N8 f- s& g                this.id = id;+ r0 b( Y1 v- \* ~# h
        }6 x. \) ?/ x9 o0 P

7 _+ C1 I" M2 a5 p5 o0 }. f        public void agentStep() {0 z$ w; ~+ N/ @9 i$ G  u$ h
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 N( l' Z6 i! W        }3 J' p$ I' u) E; ^: m9 S
}
$ W& U* t$ `$ v6 e$ ]; F$ A* n
public class ActionGroupDemo extends SwarmImpl {
$ k2 {. {) I$ I7 H4 A) U        ScheduleImpl schedule;% G* g6 R8 y& W/ d; E
        ActionGroupImpl actionGroup;
: d- L. g8 e4 V" ?) q9 g, A1 d        ListImpl list;
5 v9 S; ~0 T( ^. h, h" `; n        char Id = 'a';$ S* y+ D& O/ C9 o% M* `$ _
$ B; F. E, q- p1 s; |; p+ F: w
        ActionGroupDemo(Zone aZone) {
" }/ m5 b8 W* L* t                super(aZone);; C1 g  ]9 o3 U/ U: E
                list = new ListImpl(aZone);3 @6 D0 _4 o& r5 E& ]
                swarmSetp();
; E4 l8 v, {) p" z% g                actionGroup = new ActionGroupImpl(aZone);
3 _# }, @8 I+ T. B2 S" U                schedule = new ScheduleImpl(aZone);
6 Z- H0 v3 w# i( [6 D                try {! \2 C9 [/ ]/ M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( z4 l* P. R$ K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 I1 [) Z4 o- I/ z
                        : y9 n9 P+ E: {& E8 O2 {9 s
                        actionGroup.createActionForEach$message(list, agentSel);' N* [' a" j3 k+ n9 H, }4 w
                        actionGroup.createActionTo$message(this, swarmSel);& K! v( U2 c: h9 v* p* ^* h
                        schedule.at$createAction(0, actionGroup);/ r  b- t+ z, `8 K" b/ q9 G
                        schedule.at$createAction(1, actionGroup);
. v5 L6 ]% Q/ u- R! V6 P" B                        schedule.at$createAction(2, actionGroup);
% u2 |; v, v) c& y3 {$ r) J3 N' [  ~) W
                } catch (Exception e) {  a6 ]0 x$ q$ j' M0 M' R7 e3 ]8 z- p: K
                        e.printStackTrace(System.err);: W: V  l& c5 R6 G  i
                        //System.out.println(e);/ \8 \# }7 t% j+ v2 [
                        System.exit(1);
2 Z* B; T) u. T3 G1 S# ~                }
; T$ B4 g3 ~( f8 ^: R; {/ X+ e% _5 K

+ |5 r" h2 I6 }8 G& E        }
  t6 M1 h4 B' ~' Q3 e8 m9 S" `" p% J8 H7 m9 k
        private void swarmSetp() {
4 R. H; b" j4 ]& u4 s; W  {$ Z7 R                list.addLast(new Agent(Id));8 k5 k" z1 f$ N3 P
                Id++;, h5 I3 i7 }- Q  _
        }) ~% N: |# z; i# O
1 s! P9 L+ s% k0 C4 H
        public Activity activateIn(Swarm context) {% H8 \( _/ G( U/ O2 Q3 r4 l
                super.activateIn(context);
9 x  H8 |4 J. w7 v                schedule.activateIn(this);
9 _$ j8 k, {% d, ?% Y) c                return getActivity();
2 O8 Q- e; O! o' z7 s        }
3 o7 p/ T" o( B
4 R9 ?2 w1 v# ?        public static void main(String[] args) {
! P1 f% u1 O# Z* k! F7 o+ Y) _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ o( O% L) l% F* W& m- Y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" T9 N, ?* Q* j. @6 K
                swarms.buildObjects();' I4 I9 E: I5 g( D$ P
                swarms.buildActions();0 c' Q# Z% E" n
                swarms.activateIn(null).run();' ?/ v9 w+ G/ s# q5 v) B( S
        }+ P% `, ]# i5 `

: ?; f: n9 m1 x5 T. G* K+ q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-5 01:06 , Processed in 0.014271 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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