设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5701|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 Y6 \: O; B7 \8 f1 t- ^! a
3 \- U; R! r- g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 n. ]! Z- {- ?! ]5 Y: G7 K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 w. e- x0 O' G2 b( `swarm.SignatureNotFoundException
  _5 c9 [  D  P' C. c        at swarm.Selector.<init>(Selector.java:76)  c. W) c% _/ f! C; u$ z- {8 E8 [' z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% k; Z# ~- V: l$ o        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 T) v- M7 V) U( a" g
, s. N/ M; F5 p  f! K

) ?2 j4 U6 ]: a2 ]3 H3 Timport swarm.objectbase.SwarmImpl;9 x. [/ |( W2 w) k
import swarm.objectbase.Swarm;
/ `3 i3 c$ F7 z6 Y' Rimport swarm.activity.ScheduleImpl;
- K# [/ v4 P6 L9 ~& d  S3 iimport swarm.activity.Activity;0 T2 \7 I2 |+ ?
import swarm.activity.ActionGroupImpl;
: L& h  a1 U1 o% K# M, z7 @import swarm.collections.ListImpl;  e, L( H4 R/ K" g
import swarm.defobj.Zone; # }$ s2 x: M) k: w! n$ E/ u' V8 r
import swarm.Globals;
3 t4 k3 J3 N: N6 Z1 iimport swarm.Selector;! P% s; j+ \' R7 w2 [1 t. G
import swarm.activity.ActionGroup; 6 c% g* e6 ]# d1 P* t! N
class Agent {, ^- i7 G: C/ ^& l" H& n4 _
        char id;
# D, Y+ w1 M% ~" e5 R; C
1 ]( \/ J1 B0 B; d1 m/ x. i! Z7 @        Agent(char id) {
: [, v2 S4 e& K2 ?  c( G                this.id = id;
; |8 v7 i3 s/ Q& [3 X) m        }
2 O/ L# Q+ ~9 S+ O; V' \' K& E  d% m5 H! ?* f* ?: v* k3 @
        public void agentStep() {
# `1 b7 V8 u  v) e7 O% l; H7 B; P                System.out.println(id + ":" + Globals.env.getCurrentTime());
& G; ^/ z& D; e: ^- r2 g* d        }
& u% o4 B5 q( N  X}
2 I  j& ~8 u$ n6 m( j# d1 _. Y4 R1 y* W6 P
public class ActionGroupDemo extends SwarmImpl {
" K& Z! ^2 @' Y. N6 R# [. J: Y        ScheduleImpl schedule;
3 Z/ ]0 p- y" `4 W( {        ActionGroupImpl actionGroup;7 E* x7 d; w" w5 j8 H2 \
        ListImpl list;! }3 i2 j" d/ g* f$ W+ J
        char Id = 'a';& |1 Q6 v9 y7 c4 k
: n! J" a6 v* z! |0 `% x/ j4 _
        ActionGroupDemo(Zone aZone) {7 }5 T, q, c8 w
                super(aZone);
# ~0 c4 d, \  `9 x: B- T# J( Q                list = new ListImpl(aZone);% |( Y- u+ ?/ i
                swarmSetp();  {" ~' _, G% r" B1 Z2 E9 |
                actionGroup = new ActionGroupImpl(aZone);
" ^, i8 f- s! h+ d4 C: Q/ r                schedule = new ScheduleImpl(aZone);
8 l- |6 F6 H) h, b* p0 V                try {
1 M8 G* C" C; B6 W/ b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 E( N6 b) ?1 S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- E- t3 n2 s, g! k# `' E3 Q, N                        
) C& r. L; F; h& A                        actionGroup.createActionForEach$message(list, agentSel);
3 Y0 A) R2 s( s7 b3 h                        actionGroup.createActionTo$message(this, swarmSel);
' C  @& K; }5 f9 E7 K  g! N- D, ~                        schedule.at$createAction(0, actionGroup);3 h2 e8 p& ^: E0 D9 n; t" ]9 W5 |1 K
                        schedule.at$createAction(1, actionGroup);+ V8 F" d/ j5 p# f
                        schedule.at$createAction(2, actionGroup);1 p; v% U- i  ?9 X7 ~& N

5 _1 @! V7 H0 \( Y9 w                } catch (Exception e) {* c3 O0 `& [& H: k& O
                        e.printStackTrace(System.err);7 C5 Z* Y) p7 I. {! ?
                        //System.out.println(e);! [% ^, m' x& ]: _/ A+ Y; U, C% ]( Y- d
                        System.exit(1);
- J9 n4 B2 s1 J. B' v                }  W  ^, u. l2 x8 x  T. S/ d5 q% u

2 F* H  [% D; f+ W1 u+ w9 ^4 q- x' k. }* k3 N+ w$ s4 L
        }9 ~# v0 f0 I0 [- [
3 C! k! G  h7 r
        private void swarmSetp() {! g8 l3 r0 W' ^. X
                list.addLast(new Agent(Id));
% }2 N+ ]1 m0 [8 b7 a0 D                Id++;" m# v5 |6 X) M" Q
        }
/ f( h; ^0 F5 z6 U: u! Q  Q8 X/ E" R7 \! R  n7 I
        public Activity activateIn(Swarm context) {8 D6 X5 G% ~2 O& G/ x
                super.activateIn(context);
* B; {- t0 n- t9 ~7 O8 A, Z7 w, F                schedule.activateIn(this);/ A/ \# [  \0 _% F  ~
                return getActivity();8 l) s2 B0 S$ @. H
        }
3 T- o# o0 `+ J. L
2 A! x! N5 W" Z        public static void main(String[] args) {4 d! m. N0 |& ]9 O- h; |8 n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 I4 w4 f+ V2 M1 N
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( h; @$ t. h8 l6 t
                swarms.buildObjects();2 `: w3 d9 y4 ]: x1 E  Y
                swarms.buildActions();
: r0 a. {9 \. D. G- r                swarms.activateIn(null).run();
, q* |) d  }/ u/ @/ o7 O        }
4 Z# ^$ W/ A: R. R0 f  Z! Y6 {. q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-20 04:04 , Processed in 0.024160 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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