设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11881|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  |$ O4 T; R3 [( u' s# e- M3 m/ C, ?& S/ Q: k( d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ v4 B8 r1 k) e$ W. l4 l4 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 T+ B! X/ o9 J, A  i. Z
swarm.SignatureNotFoundException
6 }; T4 F! D* q' f! E        at swarm.Selector.<init>(Selector.java:76)
+ }1 @  V. {7 d# _: a. \- r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), C/ w' [% V# j% ^/ @. `
        at ActionGroupDemo.main(ActionGroupDemo.java:67); l$ J# A, Y* ]( `# `. {
4 j0 q4 {1 }3 r. H! O/ f
5 {* e: j/ l5 L) O( j
import swarm.objectbase.SwarmImpl;0 @, f) X2 S9 S' F
import swarm.objectbase.Swarm;
8 n1 B/ h9 V) cimport swarm.activity.ScheduleImpl;: J0 |" ^% P; O0 m) ^- h
import swarm.activity.Activity;% @: r+ y% H- M2 n
import swarm.activity.ActionGroupImpl;3 p5 Y0 ^# I$ U' }
import swarm.collections.ListImpl;
! E# Z3 Y1 i- j5 g% G4 d. Oimport swarm.defobj.Zone; ; Z$ @; P; p( E" U( E
import swarm.Globals;! n1 r" \! M/ l6 c
import swarm.Selector;7 v, j' A$ O" [  w& K1 t, H
import swarm.activity.ActionGroup; # I9 ]* Y* l1 x5 ^. Y& r6 `% J
class Agent {
9 }7 p" F% t2 r3 l3 f- [/ E        char id;
, l% n3 p9 g. p% P8 F& ], [! |8 O' Q+ C
        Agent(char id) {2 w3 B3 h* k. y# k  r
                this.id = id;. i9 I5 Z- H* h' I+ K
        }
: J4 Q" c& u1 @
2 E2 v8 |7 ?$ F6 L# L        public void agentStep() {
) i" ]2 {& n3 q, b6 o! M! E* B                System.out.println(id + ":" + Globals.env.getCurrentTime());* w) z& Q( h" S/ s* u. W! ~
        }, Y5 D& l. J; A. z. E
}0 \2 p- x3 S9 r
- U- q7 {# f% j( ]. ?. g- o0 _
public class ActionGroupDemo extends SwarmImpl {
  C8 i' K: S/ f& k        ScheduleImpl schedule;. k. y1 G. {* h" ~' X
        ActionGroupImpl actionGroup;9 N6 x" Y% ?* i6 H/ Q6 R
        ListImpl list;% N, K" f. L: v" d
        char Id = 'a';' R( S: f+ B3 V

# N9 ^- G) O. |        ActionGroupDemo(Zone aZone) {& P, M& i3 }) w; y; f  D
                super(aZone);
5 s) [/ J! H' t& q9 X  o                list = new ListImpl(aZone);
$ J( T% {* a8 @) s                swarmSetp();& V! s+ Y$ p* I8 v4 \
                actionGroup = new ActionGroupImpl(aZone);
/ }0 N  X2 S- n) D- B                schedule = new ScheduleImpl(aZone);  C# l/ E3 g$ E
                try {' T8 P3 O: ^* {$ Y$ p4 q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% U" ~- B( x! {9 v1 W) P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 Z. k8 K. G# Q, K* ?3 N                        * `1 x! [9 ~- t, |. m$ g
                        actionGroup.createActionForEach$message(list, agentSel);# J# C: j& G! E7 G' x" S
                        actionGroup.createActionTo$message(this, swarmSel);
7 C. P* a& i# W) @+ j- c7 D7 p# U4 {6 V                        schedule.at$createAction(0, actionGroup);
1 p: P: M3 [1 A9 I. j0 A# F                        schedule.at$createAction(1, actionGroup);
; I9 U9 s: J" Q! w. w! \' v                        schedule.at$createAction(2, actionGroup);
! N- Y9 J) L# \0 w  A
5 A% v% S6 ?+ p  ^8 E, L" V                } catch (Exception e) {& B7 e6 G9 j. b( p. q  W$ S! ?
                        e.printStackTrace(System.err);2 N7 _' y/ |# M5 n
                        //System.out.println(e);' X2 C( y3 V. \. F
                        System.exit(1);
) y! l4 j1 _6 k                }. ]0 K2 _' F# L2 ^* N  ^

! |# [! V, ^/ X0 h1 _" i8 D" t2 R& i; d: O4 x/ D" K$ X
        }3 }; O+ l4 R& a$ g5 D

: Q6 k2 L* A3 P) y. Y        private void swarmSetp() {
5 @$ Z6 s" Q) Y% c, |3 r9 V                list.addLast(new Agent(Id));9 Y/ p  }2 d& R5 E2 n
                Id++;9 ~, H& W0 V5 D& W2 \
        }
1 R9 C5 U$ k) m  @
, T- o* I+ v6 [4 d% F# u: u& I8 `        public Activity activateIn(Swarm context) {
# p; I' [4 ~1 O: m/ N1 N                super.activateIn(context);
3 F( K/ B+ K, V, x                schedule.activateIn(this);
, P: A; O4 {2 }" `) Y3 r, N                return getActivity();& ]; H4 A" W8 \
        }
$ Y" V, P* }: N0 y' h. Z0 Z3 U8 q" O  A. y
        public static void main(String[] args) {+ U, L' u5 b. e  v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ L$ k4 h' e2 K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 r0 f/ T4 J/ \. P4 X  H
                swarms.buildObjects();
! ^% R8 u9 W# N5 Q3 r                swarms.buildActions();
1 H1 P) g0 e2 t$ w" a( C/ N9 [# Q                swarms.activateIn(null).run();' ?3 f* r; }" \% \
        }7 R) n5 Z7 ^6 N$ B) Q& J
; T: d" N) c, R  I; g  U
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-24 15:06 , Processed in 0.017332 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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