设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12378|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ Z* R( x( }- g6 b# T
- V' \5 b3 }' k1 E: r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& z; q$ w& A& T- x; |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* x7 k, I; l' X
swarm.SignatureNotFoundException
& V! S5 v  L# u( K3 E        at swarm.Selector.<init>(Selector.java:76)
" @7 U6 c+ [! B* l% p3 n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  H( J  L% W+ r0 @6 H. n        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 t) r; m1 U& W) g
1 b  ?8 f! g) z0 c; [

4 o/ w+ {8 D; j. A8 G# gimport swarm.objectbase.SwarmImpl;5 p4 \& w/ G+ N# h
import swarm.objectbase.Swarm;
' X) j4 ]+ a& m8 Z$ uimport swarm.activity.ScheduleImpl;
4 U3 f- `3 Y+ Z8 o3 q* Gimport swarm.activity.Activity;
5 r- |  ~5 Y, I1 Pimport swarm.activity.ActionGroupImpl;
. z8 J7 M; M! k" V6 Fimport swarm.collections.ListImpl;5 a" v+ O- v% }. I, |# ~; G
import swarm.defobj.Zone; . J1 B7 h9 D9 E' w5 T
import swarm.Globals;
  x! R6 x+ S  @5 R7 u/ l# h7 _import swarm.Selector;9 t' f* O: |5 W3 [' k* ~1 j) y
import swarm.activity.ActionGroup; 5 _/ o- Y7 W+ l# T) g
class Agent {' R  q2 y  Q$ Y% @2 n
        char id;% {! q4 Y* Z2 g4 y+ L" R3 G+ N

& I+ ~1 j& A2 H( n        Agent(char id) {
7 |/ [3 @( s. v$ \                this.id = id;
/ \, c9 ?) L$ N0 w        }
3 v# \8 f- @) l9 g& b" s
$ T. d: R5 J6 g3 t* M4 [        public void agentStep() {& ~9 @) p  M+ G0 P
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- G! k* Q3 @8 E        }
; P' ]( F2 I  [. R& h/ W/ b}
% a& k( S! ^1 H7 N; u+ Q! X; g% n, r
public class ActionGroupDemo extends SwarmImpl {; a. H# K5 E! J
        ScheduleImpl schedule;
2 l7 i( w3 [7 Y3 B5 r6 O; U) N        ActionGroupImpl actionGroup;
1 ]2 e+ d. t# J2 h$ t        ListImpl list;5 Z$ {# H8 i) S! J: M* K. |, `+ L
        char Id = 'a';6 ~3 d4 U/ o- `2 }! Q

; g  Y. }" [! s        ActionGroupDemo(Zone aZone) {
- f- E! Y9 e( k8 C' b                super(aZone);
. p* K9 N  f4 i5 \; B                list = new ListImpl(aZone);
# X% o/ q! t! J" b% J# U. m; W                swarmSetp();
, y$ ]4 {( b, _; `                actionGroup = new ActionGroupImpl(aZone);3 w% {( J' _( e1 i1 A- I" o! }, e
                schedule = new ScheduleImpl(aZone);/ s" Q% m* r/ o: W1 C  @! g7 q
                try {2 U$ b2 j& K8 A3 S, J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: }% z4 g9 I4 b9 x- f- O' F) r; @7 K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 b# f" P, I! G0 M                        / n$ N  c& |3 b  a' r' _, @
                        actionGroup.createActionForEach$message(list, agentSel);
# ~' C+ W4 F2 d- X# f                        actionGroup.createActionTo$message(this, swarmSel);
+ ?1 o2 |8 W9 p9 R( z+ w' S                        schedule.at$createAction(0, actionGroup);
0 X( e  _  G2 S0 r$ A                        schedule.at$createAction(1, actionGroup);
, I- g; a5 [5 A- [- R                        schedule.at$createAction(2, actionGroup);
$ h2 I+ \6 t' \( U& |& R. B! W- R! M9 B9 w+ r
                } catch (Exception e) {
9 f& T' J4 N' |% g1 C                        e.printStackTrace(System.err);- E! ], w- T6 [0 D7 ^$ i; _' T
                        //System.out.println(e);
. G' ^3 r9 h! E# U' O" k8 ^( v! t  W                        System.exit(1);+ @# u; ?& p1 O* O: K
                }
( c" K! J- d* }- q2 c$ J
5 @) ?( q( Y; z  O, H  l) m3 P9 J2 L' U. B: @6 z" l9 a5 A
        }
! T8 ^  s9 w4 i- @# |# \0 F& N8 j9 i9 ]( M5 H
        private void swarmSetp() {1 e; D$ n) M4 M5 d6 M+ G: r4 b- Z
                list.addLast(new Agent(Id));
  M4 H: O) h% ?                Id++;% N( f3 J* n6 {& t" O. G
        }
0 _6 u' f8 r  t  h
' {5 a0 O7 u# Y( k        public Activity activateIn(Swarm context) {
1 @2 ?  Z: w' K& w8 T                super.activateIn(context);: j2 [0 Q- |* G$ O
                schedule.activateIn(this);
  ?! g7 P, Q" {" O                return getActivity();' d8 s$ w( G5 F4 ~! o
        }7 a' I" N9 t5 ]9 |3 ?

$ O& K7 r& }+ N' X' X        public static void main(String[] args) {
( M7 t$ u2 k6 l4 _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 A' N" r' h2 @% R/ e2 x
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 H* X+ n8 K7 k                swarms.buildObjects();. n8 k  Y/ _7 n1 j, `, l
                swarms.buildActions();3 s! S( W8 O1 i0 g- ]+ H
                swarms.activateIn(null).run();+ d$ s! b2 {* w7 {
        }' Z/ D. P- A; O' V* I4 k5 W5 g4 c8 Q

: t9 |, |8 V  u( s4 V( F2 H0 F# w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 23:35 , Processed in 0.017340 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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