设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10760|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 B* ~& s9 I5 Q! I1 ~- O8 m& [! b' x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 F; Y  _* |6 h6 O/ n; t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ b* o5 b, L5 N. [8 Z, S
swarm.SignatureNotFoundException
2 @# U; Y8 N. {9 D        at swarm.Selector.<init>(Selector.java:76)
* m5 f; M7 A% M' j2 z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! L* C6 H9 j; v: c5 P        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 |) X; j( F, O$ n4 P9 r8 Z4 i

$ ]4 b& g+ ~5 X  K
0 z1 {( n- X2 |- N: o! H2 Kimport swarm.objectbase.SwarmImpl;
, R5 ~& `( k3 a- J% p+ r1 jimport swarm.objectbase.Swarm;
6 }6 E+ b8 J2 |2 Mimport swarm.activity.ScheduleImpl;
6 E- ?/ L6 }" c% Mimport swarm.activity.Activity;
: f3 l7 e! \$ Z. o& u8 Oimport swarm.activity.ActionGroupImpl;8 k% k! R$ P" S' g0 B
import swarm.collections.ListImpl;0 {0 [& [  [" i; C; F% F
import swarm.defobj.Zone;
" X6 e5 z8 _& W! n* T9 z2 |( m' @import swarm.Globals;
. {5 Y# s$ h% d: c, limport swarm.Selector;8 C( I' m" h3 }) B+ H
import swarm.activity.ActionGroup;   }% g9 ~$ n# Z0 A4 o- n
class Agent {
- f" z3 h  f0 T8 M        char id;
; b% @5 Z3 ?) }  ]  V) t$ j% c, q' t# c2 m, y; E
        Agent(char id) {' q5 m! _) u& I! b5 n; a
                this.id = id;
* T1 }5 {( Z) L# H; n' @" v        }
* T* O) [& a: t0 S5 q3 G; I4 B
/ Z# r& {  F* ]. B        public void agentStep() {- L3 h7 j8 T# M/ M+ ]  C7 Q- |# G
                System.out.println(id + ":" + Globals.env.getCurrentTime());( q( W" f. T$ p; P" c
        }6 }+ @( ^2 x/ W' C
}+ A. r$ w; V& D: w0 K7 `! f
. f5 {% _( x5 I! s3 a
public class ActionGroupDemo extends SwarmImpl {, L7 n/ I" D/ R& w) k$ |
        ScheduleImpl schedule;
6 F+ ~- \; S# ]9 {% W        ActionGroupImpl actionGroup;
+ b, P' d. S0 D  j        ListImpl list;
! K( ]9 ^) L( O0 |5 Q- c        char Id = 'a';
, O. K9 D2 l* C& o" W! O
& ~2 ]. A5 O( R# N  n        ActionGroupDemo(Zone aZone) {
/ w* k8 X2 F. x& O# h) |                super(aZone);# g- }' @. V, l$ O$ ^9 u6 s% `; \+ M
                list = new ListImpl(aZone);
2 O# l% S2 r9 @                swarmSetp();$ s8 Z3 `2 O) u6 {6 V; Z. S
                actionGroup = new ActionGroupImpl(aZone);5 v% w& h* N6 R" t9 Y1 A
                schedule = new ScheduleImpl(aZone);
* Q( F) ^/ ?/ e% G6 V9 k' B  g                try {
& Z3 j3 g5 x0 H) X, A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; t. q5 ~% e+ o" @" E1 n, ]                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 S: f' V7 e, B
                        
0 l% q+ t+ e' c/ `1 H; B                        actionGroup.createActionForEach$message(list, agentSel);3 _0 O% m# ]2 C' ]
                        actionGroup.createActionTo$message(this, swarmSel);% J5 ?7 y# W0 l
                        schedule.at$createAction(0, actionGroup);- v4 D& Z2 [& U! b
                        schedule.at$createAction(1, actionGroup);
, V  p1 X  j9 i& F4 i7 y                        schedule.at$createAction(2, actionGroup);9 F/ C4 a& \, l# v, O. C7 y

! M6 W. @& _* y5 v3 L) x% G9 a: r) X                } catch (Exception e) {
0 c$ N; {& Y% W2 l                        e.printStackTrace(System.err);
) Q; V7 l6 J8 h% s, U& E  I                        //System.out.println(e);
$ v& h0 r9 D% I3 }                        System.exit(1);
4 O0 V5 D9 g0 h4 Y- i                }  O. K$ T: [" ~: q& H* Y0 g
& z+ l. w$ z  j1 V
* {: z8 ~3 [$ m; r
        }% _  N9 e( l2 w; _$ ^. Y4 ]

# Q4 E  W' U# g4 [        private void swarmSetp() {# l+ X. a5 k  ^5 P5 s( K; w- M
                list.addLast(new Agent(Id));
# [! \; n( K, N" n, V                Id++;
, ]1 p' B7 k, M        }
: e* m9 _$ y( N0 S% [" ?& x3 A7 x0 c$ Z& t  @, ]: D
        public Activity activateIn(Swarm context) {8 w) v# p+ l5 }0 m4 q
                super.activateIn(context);5 {* J; O7 e7 h
                schedule.activateIn(this);0 `8 G- ?% E& R5 E3 i
                return getActivity();! X9 M( c8 K; m0 G
        }' c/ b, \; @& O& n! ~
0 @1 n+ m! O2 W2 q# t
        public static void main(String[] args) {- C% m. |9 Y. w: R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 x! ~; f- [4 i& J6 W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' _4 B1 K. I# t
                swarms.buildObjects();: i( S0 K6 h* r3 u0 K- _, ^
                swarms.buildActions();# c, C5 P) j6 G( ]8 `5 B. V
                swarms.activateIn(null).run();
1 m/ A- u, ~) D' P! p$ \' s+ A9 h3 J        }4 Z  K0 |- T4 C$ V/ V" Q8 P9 p( ?

8 O) {; @( o9 v) ^0 g: Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-22 21:47 , Processed in 0.016825 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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