设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13321|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 W) H- Q4 V6 }1 G! U& S; U" x& m; P6 X$ S; g, H1 v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% E8 J/ c2 s7 l2 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* h# H" g* J5 R& e. o) e% v
swarm.SignatureNotFoundException
) [* |' z) p1 O        at swarm.Selector.<init>(Selector.java:76)) k( N2 q; q- ~4 \1 U1 U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 W7 u& O4 U. A& C4 a& U
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! v3 ^9 F; Z* L+ b$ \

; g/ e2 l' O" L. [, l, e* m$ y  p9 ~2 }$ D
import swarm.objectbase.SwarmImpl;
) @; ~' e. D' ~, P( ?import swarm.objectbase.Swarm;
% c0 c& ~+ U: }" v/ ?" l0 Uimport swarm.activity.ScheduleImpl;
* u% b% ~3 b) |import swarm.activity.Activity;. d! ~* z5 K( ^: Q6 @) X. {
import swarm.activity.ActionGroupImpl;! K' O/ S) @. @6 T& ^% c
import swarm.collections.ListImpl;* G# n6 j- W* x8 `/ m2 B& p' I
import swarm.defobj.Zone; . W2 a1 B6 w7 C2 s" i9 x7 ^8 @6 S
import swarm.Globals;1 r1 ]3 _7 u3 C+ f8 x! C- w
import swarm.Selector;4 u2 e, `( n9 W
import swarm.activity.ActionGroup; . Q3 I2 V) v$ \2 L* c& Z# ^; I
class Agent {
8 s% w2 S" [2 N5 |- G        char id;
9 d/ M! P2 b; `# c& Q' d; r9 ~* c$ B' d
        Agent(char id) {1 b. _* K9 O' a& H
                this.id = id;  B& a, L  \1 g8 i( Q* ^
        }
: M9 D" s1 e# u; M5 p7 g
" a5 u; H; H, W7 j" |; e  E        public void agentStep() {
/ @9 }6 Z4 g: y2 B# L$ X                System.out.println(id + ":" + Globals.env.getCurrentTime());6 m$ K+ r: O0 ]$ b: t# S! v
        }
; v' M: A# [+ l* K}
& H: g& x: v; S& Q
8 }: V' m) y# ?, }; m- T9 jpublic class ActionGroupDemo extends SwarmImpl {
& Z% }) I0 h9 b% x  o        ScheduleImpl schedule;' f, l9 o2 k& h) ]( f$ ^7 F1 X0 T
        ActionGroupImpl actionGroup;
$ B8 j: ~" z6 @" j" t        ListImpl list;# I" }1 I/ d& ?- r5 N7 H0 p
        char Id = 'a';7 ]5 ]9 j4 U' ^3 I' y0 U
7 Z. [" O% M6 z! t  q/ _5 r4 S
        ActionGroupDemo(Zone aZone) {
) B) n% [$ Y4 C# f$ R4 U3 h# \                super(aZone);
4 i+ s+ W4 Q. X5 V9 C4 L                list = new ListImpl(aZone);5 {6 C2 m& i4 D% f! C& E! B
                swarmSetp();, g! Y/ y! }0 V% i4 p) Z3 y
                actionGroup = new ActionGroupImpl(aZone);. |* x0 ]# Y0 G. H( l# a
                schedule = new ScheduleImpl(aZone);
8 ~, Y8 I9 u/ t9 z  o                try {
  \0 G/ ?* x) M- h% V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 i9 d3 h4 |- z2 s6 a' N+ ^0 S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 v7 I- g1 Y2 S                        1 b) ^* L( k# Q# Q
                        actionGroup.createActionForEach$message(list, agentSel);
- M8 c; }1 j% F; K7 u. v7 }' t: ~                        actionGroup.createActionTo$message(this, swarmSel);
; k$ H- u9 B/ q# j# @                        schedule.at$createAction(0, actionGroup);" H1 K- R5 g. B3 s
                        schedule.at$createAction(1, actionGroup);
, C# U1 ?2 q$ ^  m4 |0 n7 N                        schedule.at$createAction(2, actionGroup);
: G6 f+ ^! Q% g# w$ N: C$ z; w, R4 t6 h# e2 [
                } catch (Exception e) {
% j2 d) p+ \. O- Y$ E- r                        e.printStackTrace(System.err);
* s1 \3 W% V% m                        //System.out.println(e);
1 K" a3 {6 I: `                        System.exit(1);- W) t- p7 N' x8 i" @
                }
+ E+ m- k! @: u
' Z! k* l1 P' U4 Z% V; W7 `5 D! f9 t5 }/ F
        }
5 W5 D! u" G7 @7 S+ _  ~6 y  C9 s3 w) w2 H
        private void swarmSetp() {
0 z! q. _& l; e8 p$ ?: ?9 }                list.addLast(new Agent(Id));
1 y: u' F; K9 E                Id++;
! L/ P4 A8 s$ [' W6 B8 ]        }
3 B/ b2 Q) \& _0 Q1 [! u
, z, B! }3 S2 c+ b  l+ o& i1 P" @  d7 @        public Activity activateIn(Swarm context) {
! h; U8 {9 U% ]0 O3 V+ }0 _& v: a                super.activateIn(context);" R2 K' f# J# ?' O8 S& x0 J& ~
                schedule.activateIn(this);
/ q6 V$ v. A/ z! ]1 S+ |( m                return getActivity();
  f. X- {2 E) T" }        }' c& H+ f! B" ~$ \/ D- G! ~! b

. L) n6 k9 G- E/ Z9 M        public static void main(String[] args) {
/ q) g1 \+ L' @8 t; [9 @' H* h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 |+ s7 @0 a7 j4 q1 j! k+ C* j4 h
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. n, Y/ N# c# F: Y" c( c                swarms.buildObjects();
" ?+ [1 N' w  X4 v: q! Y                swarms.buildActions();
5 Q/ @8 E8 d7 h7 Q* L) s                swarms.activateIn(null).run();
. N" x7 w* t- b7 I8 s        }; o) u5 i7 M# m) H: V% c; J

! [: J* i; Q6 m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-3 17:37 , Processed in 0.022864 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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