设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5569|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 W4 M: A' z  n3 q& f9 c; Q1 q- _) ?! |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 E* ?6 e# a6 W7 q3 \3 k4 g/ {% G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ @: h. f/ F) e/ D/ M3 |' W' [
swarm.SignatureNotFoundException( o9 U2 J  L: K! C: ^: N
        at swarm.Selector.<init>(Selector.java:76)
8 J( P) _# s; F; W! z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' m) Q. v8 s* v4 f1 ~        at ActionGroupDemo.main(ActionGroupDemo.java:67)  D6 L8 q2 ]: m$ w% z. u! x  B

5 S* s# {7 Q! Y, D" Z. h3 Y" I& P) i& m- M1 P
import swarm.objectbase.SwarmImpl;; \' [; }: m+ `) ~6 p+ C
import swarm.objectbase.Swarm;
7 F8 _8 K" H) j& W7 v8 Mimport swarm.activity.ScheduleImpl;
( B5 J# f2 z; G0 X) h! ^  dimport swarm.activity.Activity;" K! ]" j1 g- O: y0 L6 n% T
import swarm.activity.ActionGroupImpl;
, x# q: O1 R* `, O* k+ Cimport swarm.collections.ListImpl;
3 v0 Y" }2 U0 Y# P: [import swarm.defobj.Zone; $ Y. {7 l5 x) Z+ b0 U
import swarm.Globals;$ [- c" m- u* L* f' m) G. F
import swarm.Selector;
1 `0 S2 M* V; i7 m6 A' k% y8 \7 Timport swarm.activity.ActionGroup; ' |0 l( b+ V: P/ G
class Agent {
; L+ E' |( L+ ?! N2 }) K0 r1 L* M        char id;
1 M: ]$ b  Z$ N# p! I! b+ O3 B8 k. _0 y+ |1 Q  A
        Agent(char id) {! Z, S+ L  s2 U
                this.id = id;6 I3 V. A' }! a% b
        }) @6 q7 ]: g0 o  o$ b
7 Q7 m6 N+ D! s. e, E( o" ?. `
        public void agentStep() {) A2 ~! c. w" |1 A; ~2 L3 O/ E
                System.out.println(id + ":" + Globals.env.getCurrentTime());( }4 Z7 R& I) ^8 e
        }
; z- w/ t; E( D3 Q1 e}
4 Y! X+ H. c0 R
) F8 p7 ^% Q) y( T6 F% Jpublic class ActionGroupDemo extends SwarmImpl {
9 S6 v9 E, x- r% Z5 B3 ?( a        ScheduleImpl schedule;4 X3 [% B: l) h! H1 ]' a  x! _
        ActionGroupImpl actionGroup;# z' ~3 t* u8 C) p4 Q" U
        ListImpl list;" Y3 w1 `! O& V+ i3 O" [  x
        char Id = 'a';
8 n# X) V% |3 n3 Q# |. i( P+ Z5 v  H- D
        ActionGroupDemo(Zone aZone) {
* w4 q* R0 }$ b3 @+ L9 G8 |4 `                super(aZone);2 z7 }/ `1 g* H
                list = new ListImpl(aZone);0 K+ k2 n! T" M
                swarmSetp();& @5 |# ?7 G, @+ `9 y0 _
                actionGroup = new ActionGroupImpl(aZone);* s! q: d$ ?$ W& v& {
                schedule = new ScheduleImpl(aZone);0 M" l; }( V1 K, `! Y4 j0 v
                try {" Q5 N$ ]0 ]: @) ~1 d9 s, _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* x5 J5 z: U& q9 f) m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& Z6 W! p- q- z0 F8 d
                        4 q0 H' d" |; I2 [* }
                        actionGroup.createActionForEach$message(list, agentSel);
$ ]8 Y+ |( U8 |- e& a* s( {" f; G                        actionGroup.createActionTo$message(this, swarmSel);8 `4 |+ W3 z+ n0 z
                        schedule.at$createAction(0, actionGroup);$ g) x' V" X: }. E6 c
                        schedule.at$createAction(1, actionGroup);
# w2 ]: Y& d  E# O$ Z* I- U                        schedule.at$createAction(2, actionGroup);
, @; h$ {' A. r& i- R; U' q  T
1 F0 X9 ~: {/ ?9 [. r* b9 B                } catch (Exception e) {
* I4 @+ z! m" @                        e.printStackTrace(System.err);
: d0 @. _" X7 m8 p+ X  \                        //System.out.println(e);
9 l5 N1 }$ B9 O8 Y0 g6 `                        System.exit(1);
0 N6 I- k9 |5 |7 N7 s9 g                }! ?8 X5 }* j1 b/ t% x& q9 n3 S
6 u$ [( I- v) |/ L. k; d2 T

" ^8 _# e1 n! ?2 O+ N        }+ m4 z0 u6 j* W3 y0 @' p7 t

2 P5 g' C5 c# C/ Y% A        private void swarmSetp() {2 m& A* r! ~* ?4 c
                list.addLast(new Agent(Id));
# u& z  {2 E6 |* F" Z/ U3 u# u0 e                Id++;
8 s3 g; T9 t, @8 ~; N0 z5 }- N        }; A1 T  z& k( D

7 [5 m: f* M4 l2 i$ W7 q        public Activity activateIn(Swarm context) {
+ `; r- s" S3 Q+ k2 T. R4 u6 F3 J) ^                super.activateIn(context);8 U" g/ l0 _( {6 X: L( m
                schedule.activateIn(this);
( m+ G: A1 l1 j( f; @% N( F9 `$ T                return getActivity();. l: y4 m" a! [: W0 g% P
        }
. L! M0 {7 j' e5 L5 F
* V& A7 l- P$ ~0 \' a        public static void main(String[] args) {
8 c7 W, x) ~% V2 A9 M# o  ~4 u6 K                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% y" I! q1 ]! t6 C4 B% x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ i2 Q% k* A, s
                swarms.buildObjects();
+ h) J: ]/ A) d% h8 B                swarms.buildActions();
. K& m8 F) a( U' Q                swarms.activateIn(null).run();) p( d. W6 V) i5 {8 `) d4 }2 E
        }4 h3 K% A4 g+ {, M+ F, w6 Y
: @# i, ?2 l% Q  w# N) G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-13 13:27 , Processed in 0.016256 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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