设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6508|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 }2 M. h  u0 j9 |
4 x& ]) M$ A0 [& r4 Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 B/ w& i0 u' K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% Q6 s4 V% v) T% J
swarm.SignatureNotFoundException
7 p( Z7 F1 P9 W5 T# X        at swarm.Selector.<init>(Selector.java:76)
+ J7 C. |: `; ]; G  Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  n$ f* R3 R) B( P7 o2 _
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 E. ]2 F: R7 q- t' g* _
* ^2 c* a7 A$ z1 R) V, K( g8 B) @  b) q: ?0 W3 G5 i
import swarm.objectbase.SwarmImpl;
, W, V  A# i9 X, {8 r# h2 s, Bimport swarm.objectbase.Swarm;4 T. W- V. M7 V$ K- O; `
import swarm.activity.ScheduleImpl;
( ?7 q- J) J' h5 p1 H$ \import swarm.activity.Activity;
) s8 U! `9 J9 K+ U- e4 W" Bimport swarm.activity.ActionGroupImpl;) K" O  h0 W' G% d
import swarm.collections.ListImpl;
; w$ k2 G1 Q' \4 z- v4 iimport swarm.defobj.Zone;
/ b1 @$ C: @8 }" Y9 ]import swarm.Globals;2 ~: {. g+ x7 @$ y  l; Z
import swarm.Selector;
/ q8 }/ O- s1 @' F" g$ nimport swarm.activity.ActionGroup;
5 x: p0 q" r9 \3 n8 p8 ~+ ~class Agent {: D: Z8 p, n. A1 I8 I
        char id;
0 w. N2 L; v9 \0 x2 u" _! ?3 q/ X$ W" H( m; t# r; N( R6 C
        Agent(char id) {. `+ X2 S+ H7 a0 Q. b/ |
                this.id = id;/ u7 K* k' `6 p8 S8 C$ N( D
        }2 e( S8 i8 h4 {, ~
2 H  j6 f: A! y7 N
        public void agentStep() {# U5 t6 c  _4 ^0 Q+ w% c
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: O  W- |, m0 j! T9 m        }+ K7 u/ D$ N4 ~3 ^
}$ a7 _" ?# |* Y3 A4 M

! ?7 d; z2 t8 P9 G' F* ^/ epublic class ActionGroupDemo extends SwarmImpl {
0 P. t8 Z" O. ]. q7 a; L! |. `+ X4 e! g        ScheduleImpl schedule;  l8 p2 l+ L& b+ p1 Z% v5 Q
        ActionGroupImpl actionGroup;
* i$ a: q$ z: p$ p9 R( H) y3 x7 g        ListImpl list;+ J* J7 O" C" Z1 c
        char Id = 'a';
9 K) Y3 s% L; w7 z# D0 ]7 M
9 |) V9 x# p$ G        ActionGroupDemo(Zone aZone) {
+ L; w; _! ?& a2 ?                super(aZone);- P' ~) Q$ ?+ o. L% w$ J9 i
                list = new ListImpl(aZone);
$ y. ]$ ~( [3 w7 r2 ^                swarmSetp();. k* ]" V- k) O/ Q9 {) {9 \3 V
                actionGroup = new ActionGroupImpl(aZone);# a! W$ g5 `. c9 c6 Q6 R8 @
                schedule = new ScheduleImpl(aZone);7 `/ ^4 ?8 T0 t
                try {; t1 a, t! @. G6 t! T$ f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 V7 T; `' B3 X, ?- a7 s
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* q9 S1 }; Q$ X. a& _
                        
8 ^6 B. Y8 s6 s3 O* Z- V; o2 ]                        actionGroup.createActionForEach$message(list, agentSel);7 B7 J2 G9 o, n5 _  j& g% U. H1 o
                        actionGroup.createActionTo$message(this, swarmSel);
3 G/ s) B( v- e. L; y                        schedule.at$createAction(0, actionGroup);# x, t% K  e  s+ O
                        schedule.at$createAction(1, actionGroup);
+ \2 X: M: l7 _; b1 K; H                        schedule.at$createAction(2, actionGroup);
  ?0 y  Z4 T4 [! b/ p
9 z  `' m4 e% C5 d* e                } catch (Exception e) {
+ N. G: V5 B+ U  a$ b                        e.printStackTrace(System.err);8 \6 }7 Y; ]( r1 {6 v
                        //System.out.println(e);
, C4 T4 N. k. S                        System.exit(1);  {3 X! n9 s: l! `/ \; f
                }
5 s# r6 V" w9 @* l% I( q( ^/ X+ T
- f3 [4 n* q: Q. Y. ]' H( c8 r" H+ O: z
' |  u9 o! V# c/ E# w        }
8 @% t' z7 }, I$ R" Y
6 z6 F: s+ t0 |8 Z" n: [5 \        private void swarmSetp() {
) u( f9 l0 V: Z3 K7 r& Z/ d3 z2 y                list.addLast(new Agent(Id));
. Z4 Q+ ?) V! J& r7 \                Id++;8 k1 u7 n9 Q: U' d' D* s$ `- A. e
        }6 r5 e9 \3 ?2 X- t  [' E

9 X# y5 U! `, t- g) R        public Activity activateIn(Swarm context) {
/ z6 @9 h3 M- r- c; W8 u) W4 U                super.activateIn(context);% I1 y3 P" U+ q# c" |& t
                schedule.activateIn(this);
# Q0 x$ m/ m. N7 H                return getActivity();4 j8 b5 R/ }2 ?) ~- W2 x5 v
        }
! u2 F& u0 S/ o
1 Z; V0 }- i+ n0 O- F5 d        public static void main(String[] args) {
3 g0 S" I$ W; f# }- g5 h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. A8 i+ ~1 L6 s/ A& o0 d, H, o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 h  W: Y- d1 e- I                swarms.buildObjects();+ U0 s, H+ i/ q# `* J- J% ~$ r
                swarms.buildActions();* b& T. t" x6 z1 j. u1 L
                swarms.activateIn(null).run();
  {7 E' b3 E4 J& c7 G        }
8 n' {! K. e7 ^6 `+ k
1 Y( q" F$ }1 S& t* p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-30 14:59 , Processed in 0.015402 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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