设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13290|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + I- c  _; j- Z. ^
. t5 `+ i: Y: \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 ]+ u& A% A/ J$ D) k" A3 f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% h0 C* b4 N: U8 H6 ?# Mswarm.SignatureNotFoundException
  T0 O4 r! n1 g% F# z3 \6 {8 x        at swarm.Selector.<init>(Selector.java:76)
% n+ a& [' L) G, K3 x  \6 S, U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: ~- D; c+ z9 k) v  c3 X3 R' G        at ActionGroupDemo.main(ActionGroupDemo.java:67)( s+ U1 z' ^! y3 H7 Y+ a: B9 L5 A* k
- G  |3 c5 j% V# b1 |
! \/ J9 ~  |9 c
import swarm.objectbase.SwarmImpl;
* Z- b# V: }. x3 R; }$ Timport swarm.objectbase.Swarm;$ f% j" D; H+ J4 J) X; \
import swarm.activity.ScheduleImpl;( g, m2 X3 }2 |% V4 Z
import swarm.activity.Activity;  s/ f$ t( \0 I4 S. C( Y" c
import swarm.activity.ActionGroupImpl;9 Q/ B6 q+ S) I1 T+ i$ ?
import swarm.collections.ListImpl;: }  p4 ~2 l% E7 |/ d
import swarm.defobj.Zone; 4 Y3 S: T" v+ P  o
import swarm.Globals;: F9 [! d" b. q( \. F, i/ T
import swarm.Selector;0 `8 {7 Z; N5 G% ]2 r
import swarm.activity.ActionGroup; 9 ]+ t1 Z+ ]7 ~7 \( x& {- v" t
class Agent {
3 O: Z: M% _- D7 n# p1 ]! j        char id;9 x; c" g1 g4 F% ~9 z- j7 n7 i$ b

8 e* |* f9 J' |/ n) |        Agent(char id) {3 O- E7 q4 F8 o9 K, x
                this.id = id;
& C8 C: S! H- ~. l        }
9 n0 ^( N% ~8 e8 E- M( c9 c1 a& j7 ~# @, E
        public void agentStep() {+ l/ K7 h6 l; b4 y7 s& @
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ j0 F+ s) s& S  r1 J7 `/ l
        }, H9 F# T0 y7 l9 J& F: u5 d: Z6 B5 O
}
" ?$ H- `" o; s8 V
  ~" _- n& u* [5 u0 }( {# Lpublic class ActionGroupDemo extends SwarmImpl {
# l9 X7 ~( G2 j$ \5 X9 Y! k        ScheduleImpl schedule;
; F, e; @4 u1 l3 W( Y        ActionGroupImpl actionGroup;/ L; R! X- b- i0 r  z6 S% s
        ListImpl list;
5 b/ u# a, C  g! d$ b        char Id = 'a';& q9 o6 D# B, H/ \; g% K

  X# i4 x/ [* l0 r3 w        ActionGroupDemo(Zone aZone) {
$ G9 M* c7 |8 K) `                super(aZone);
! d7 L& Q% _$ U( m8 E                list = new ListImpl(aZone);9 y2 z* f8 X8 c7 C: [) ~
                swarmSetp();
7 C# g+ i1 @% x& [) {  B( Z; ?                actionGroup = new ActionGroupImpl(aZone);
/ O+ N( A7 t4 |0 f" m5 m; k                schedule = new ScheduleImpl(aZone);
7 Y5 ~. ?3 s. F( B  j2 J, [6 f- @# M                try {
0 b, W$ N; _/ u8 ~. b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- q7 I$ A4 }  l! a( ~7 f3 e, h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' I6 s  B% N, ]) \( Z& p: w                        * t3 b5 e1 Y( s# T; m
                        actionGroup.createActionForEach$message(list, agentSel);; t- r1 ~4 B* L* d" C; N
                        actionGroup.createActionTo$message(this, swarmSel);, k8 m- M# I7 h- k; L0 h
                        schedule.at$createAction(0, actionGroup);& }- H5 |, e% I* _- j
                        schedule.at$createAction(1, actionGroup);1 I7 \* o1 @8 W4 P* y4 c
                        schedule.at$createAction(2, actionGroup);
8 R/ l& u+ c; r
/ d/ z% S0 b9 K& Z& _8 R1 P                } catch (Exception e) {
; ?% a* I% z* K8 }                        e.printStackTrace(System.err);
2 B) l. ~$ t# T: ]& t+ J: ~                        //System.out.println(e);. \* ^& |4 F7 t' F4 t% W
                        System.exit(1);
, J# j4 c+ h* ]$ L; J                }
$ [& ?6 V  X1 y$ b" U7 {, ], A7 l) P# h5 p

; {# M& o: ~# y        }8 o* S1 C( t9 R8 B) M- y* h
' [$ @" L1 g7 p& k# R; {
        private void swarmSetp() {
! h6 e, u% ?$ W9 Z                list.addLast(new Agent(Id));( Q# K8 E4 h$ O; V. W0 C6 k( w
                Id++;
. z8 b: t8 Y& l% v6 f: X        }
3 X# S# d* R8 e) |
2 i: l8 W3 {, k        public Activity activateIn(Swarm context) {
* a6 h6 |* N- Y' [! Q/ Y8 E                super.activateIn(context);# u- o6 ?8 E! Z1 o
                schedule.activateIn(this);9 S; |1 m3 E0 Q- H3 `
                return getActivity();
2 C% }5 c! Y. ?6 D2 k2 C% E+ o        }
5 i' S- |+ h; t% Q8 Y( _% @
2 O+ v5 ^) I& i: L  K        public static void main(String[] args) {; F# |$ ?2 V; v5 D5 H9 o, N& B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' Y- K; o: H. o+ |$ }7 o- M3 Q1 Y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! `  m+ Z0 L% t- H! H
                swarms.buildObjects();0 l, |1 p+ e0 H3 o/ F- t
                swarms.buildActions();
# Y  @/ C( y3 p* p9 |5 M4 s. i6 ]                swarms.activateIn(null).run();
5 S: H3 H0 d" t4 v        }
+ ]+ s8 e6 h4 k3 g# q! V
0 _9 B% O; [* i( _) ]& D* A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-3 02:07 , Processed in 0.016104 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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