设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7459|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  i6 S1 Z6 F# [/ t' z: c* G5 H& B, B* U& h  d( z% K/ ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 z6 @; i+ l3 p7 S, {! T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." z: Q5 ~( K, R9 k& @, ^
swarm.SignatureNotFoundException3 I6 M2 H9 L1 |) w; g
        at swarm.Selector.<init>(Selector.java:76)
6 I5 O, V3 Q( Z# c: i4 L  k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 O& O* {+ {0 p* o! f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" y( s# v; ]2 P1 R: |* p' G
% r, d  o) ^1 Z7 G0 _) S  ]* c/ M# K" q! Z1 q$ R/ O& y# W
import swarm.objectbase.SwarmImpl;1 a/ q& o$ M) |" Q
import swarm.objectbase.Swarm;7 T+ k. j4 {+ }; H' `
import swarm.activity.ScheduleImpl;
/ X/ e. h& U4 R# ^+ Yimport swarm.activity.Activity;5 Y0 e+ i0 z  \+ ]
import swarm.activity.ActionGroupImpl;
$ E8 A2 R4 N4 A- r# \( `4 C( Himport swarm.collections.ListImpl;
: A2 X; c. |( e* w' y5 R. uimport swarm.defobj.Zone; ; a: I  _# ]- ~  B3 u9 s
import swarm.Globals;( B' Q1 _$ s- C: [0 U
import swarm.Selector;) r& z$ k! {9 X4 j6 R
import swarm.activity.ActionGroup;
7 T' ?$ |3 p1 j. ]class Agent {9 P: g& `: s3 u  k
        char id;
7 U' }# v5 k7 O2 t7 @8 q# {  s2 T! X# x7 K7 H
        Agent(char id) {
! m9 |6 P. y) \  l6 o7 L                this.id = id;0 V* b* v  j6 m) E$ F& P9 h
        }
# b1 U: Y: U' v/ W9 k/ B1 b# r$ W+ G: N+ _3 N# a
        public void agentStep() {9 e* O, ^: a; L6 P( g. |+ v7 J* _
                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 D5 `3 s, ]' q) b+ \; ~* Q7 O% B        }! G5 z& B7 j# Y5 i
}2 P% R" X# e( H  i, I

% T4 C4 U8 B. W+ ^( y  A$ O4 B$ qpublic class ActionGroupDemo extends SwarmImpl {
' z0 a, W/ U, `  [9 O9 U: j. E, `        ScheduleImpl schedule;2 ~0 N! t2 e# [7 T" O
        ActionGroupImpl actionGroup;! }4 v# h3 O2 T5 O+ N* @/ i
        ListImpl list;5 w: v1 @3 G* r2 q. q
        char Id = 'a';
# m  F. R4 ~4 m! ?3 q
# l6 p7 _) q; k+ ?5 e2 ]        ActionGroupDemo(Zone aZone) {
9 W2 h; I; a1 o% V; Q" k3 h                super(aZone);0 p9 _/ P  c; V( u& Y
                list = new ListImpl(aZone);$ G; h# ^5 }/ c6 y; k  g, I
                swarmSetp();% _$ e7 @( q  J0 V; F! q7 V
                actionGroup = new ActionGroupImpl(aZone);$ r/ d# E6 b5 d
                schedule = new ScheduleImpl(aZone);5 Q2 d% \8 F; V1 _# z
                try {
  h* g7 T& f2 ]- K, U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' L$ p) c- B  q" |1 Q
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 z9 f+ g/ A) Y6 `( Q2 B* ^
                        
) C; B- @) l+ ~4 p) }                        actionGroup.createActionForEach$message(list, agentSel);
  w. A) v" |# F                        actionGroup.createActionTo$message(this, swarmSel);
' d. f" \, g& D5 t* l. l                        schedule.at$createAction(0, actionGroup);; `, |7 p; X# ], o
                        schedule.at$createAction(1, actionGroup);9 x, }1 ]; \) H# _
                        schedule.at$createAction(2, actionGroup);/ ~$ H3 u' n1 _. T+ X

- C$ x2 q# ^0 B+ Q( t/ b6 j1 F* T                } catch (Exception e) {' C  X  O& @5 e# C6 x1 z9 R. f
                        e.printStackTrace(System.err);7 u  L) O4 x3 P9 N# ~
                        //System.out.println(e);
' _1 S8 R2 C/ E                        System.exit(1);
! g2 X) r# Q/ V                }
5 n0 @+ L1 ]' u  v7 Q' e( r. V5 x/ A& ]
4 {7 S1 I* V5 J8 Q$ ?) X
        }
$ ~% }. t+ y! a8 R2 y+ j% }8 l) B  x7 Y# |' B$ R5 B
        private void swarmSetp() {
/ S3 z3 Y2 T$ A                list.addLast(new Agent(Id));8 J, Y9 c. Y% b7 _: K
                Id++;/ Z, {6 Z4 \' E  ~  {
        }
6 ?9 s: Y: y; ^4 g  r  ]. z! Y3 D! ^; }$ y+ b/ p
        public Activity activateIn(Swarm context) {; g: c  }( f& K2 @
                super.activateIn(context);
, a* k6 E( s4 u                schedule.activateIn(this);
% ]  A/ n- Y8 w$ f1 U/ ^+ d% l$ Z  h                return getActivity();
+ q9 [$ y8 D& g, d* X& P' k7 ]        }" r  _, ?2 t9 `+ T
: Z) ~* C. v/ _' X$ n& e) r* p5 U
        public static void main(String[] args) {& F$ E+ [9 d2 ]
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& h2 [; h8 V0 Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. W1 j. O. _0 O: ~+ O( c. G4 |* ~                swarms.buildObjects();
, c) ]; u2 f! T                swarms.buildActions();
* Y& t5 C5 s' \, R' a                swarms.activateIn(null).run();4 i" ]8 k/ h% T7 [
        }1 p! c- F  s4 C: e! k; m! E# d4 I
0 x/ d  q) `5 b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 09:49 , Processed in 0.015590 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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