设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9379|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; Y+ i: m- x% q
" R# c) c. H9 Q# j- ^3 G, Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- m4 `. y$ a/ y/ E/ V9 ~- |, N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 D7 s, _  x+ `' i
swarm.SignatureNotFoundException
0 p4 `% j: x: p5 w        at swarm.Selector.<init>(Selector.java:76)
4 W: H& Y, `. n0 `  c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 i( i) E- K) L; G
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; A( L9 }+ t; Z) b2 B9 ~5 O
6 C( u) D0 }. g/ n. g9 }9 x5 f' J, I5 X0 k0 m' c( e
import swarm.objectbase.SwarmImpl;& y7 b+ j4 \" V6 R# N5 l) o
import swarm.objectbase.Swarm;
4 \" g  _0 i5 `5 [2 B8 Zimport swarm.activity.ScheduleImpl;- V* M5 l9 m1 ]  f3 J
import swarm.activity.Activity;
" h- }( L+ |4 n6 r$ K# iimport swarm.activity.ActionGroupImpl;0 K& h3 i. O- G% j" K8 d' F: [
import swarm.collections.ListImpl;7 Z. @, M9 X- F- p( C2 x2 A
import swarm.defobj.Zone;
0 i% N2 L# M2 W) |0 j( Kimport swarm.Globals;
3 |+ j' ]7 I1 h  }import swarm.Selector;
. k, G  i+ d4 Q9 Nimport swarm.activity.ActionGroup; - Z" M* ^! v0 c) H3 A. J
class Agent {8 d" i0 Q5 H4 y# b: q
        char id;' L3 R/ ]$ k' j+ ?( S0 s

' w% R6 }& z5 I! k8 X& h7 H        Agent(char id) {2 q+ {( G* J% Q8 v! k& |% T
                this.id = id;
9 p4 X3 \$ \% L9 \) L3 w( B        }% O4 ^3 K% z% P* S2 V3 F* q

" c9 U( p  S( c4 t- _6 K0 x        public void agentStep() {3 {8 j/ f4 x2 |9 F; d5 k
                System.out.println(id + ":" + Globals.env.getCurrentTime());. ~! N/ t$ T5 X0 Y- @6 b3 s
        }' M; Y) [' H* D/ A- g
}% l9 m) o! I( ]( n/ j

8 Z; ]1 |' ~1 ]% `" N2 r& p+ Bpublic class ActionGroupDemo extends SwarmImpl {( U, s" }# [1 Y& C9 V9 u7 K
        ScheduleImpl schedule;
" f7 y' n7 x2 Z' L( s1 k        ActionGroupImpl actionGroup;1 y3 C# x; K7 {# C5 v
        ListImpl list;
* n$ x9 `9 N2 Z" }% n/ k        char Id = 'a';
# P! p; R5 a% z- m$ O! V1 W6 u! f; X  u
        ActionGroupDemo(Zone aZone) {
7 A& e" c$ E- Z; O& N- \1 c                super(aZone);
5 i: `+ ?3 X: |+ Z                list = new ListImpl(aZone);2 G) M0 j5 [' w" M% y
                swarmSetp();$ C! s2 P7 U! Q- P( _0 A! I
                actionGroup = new ActionGroupImpl(aZone);
# Z2 h5 A  L2 X6 `+ E                schedule = new ScheduleImpl(aZone);
! v- M! I1 r* s2 \$ ~                try {
6 p( k: v: N1 H7 _5 f9 a" U0 N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 `2 O1 c. n: V4 y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 G! z$ I( w$ c                        : y  v  S3 n; P& F6 R5 y2 c2 f
                        actionGroup.createActionForEach$message(list, agentSel);
9 \3 y+ Z) A9 Y. a- p4 V                        actionGroup.createActionTo$message(this, swarmSel);- b! y$ `6 w7 ]) W
                        schedule.at$createAction(0, actionGroup);
1 @+ [) h2 r$ C/ n                        schedule.at$createAction(1, actionGroup);
  n: m; e  V8 A, ]" A                        schedule.at$createAction(2, actionGroup);
* n9 w% O6 S' r6 {. Y! C: K) Y% J% l! E, U' }
                } catch (Exception e) {
' R% ^; j9 T, V' l* c7 D; u                        e.printStackTrace(System.err);2 [8 `6 N4 A. Z2 b& ]
                        //System.out.println(e);
4 Q6 K6 S7 F0 i8 N" m- u# Q                        System.exit(1);
+ g, I3 K7 \1 V# w                }5 z9 }9 ?3 a4 O( h/ m
( P8 F/ E! b+ k* C

$ }) d5 f4 U) D2 `3 \5 @        }0 L% \- S; D' w  e/ L

4 Q+ ^7 H3 B0 k" w. @        private void swarmSetp() {
( P& w+ F& M  v                list.addLast(new Agent(Id));
7 |/ w8 D% G8 M: @  h2 R1 U                Id++;: `0 T  {* |$ _/ C, H' s
        }, |% |# o* D1 l; N7 E5 R

0 C$ S& |, g. D" k        public Activity activateIn(Swarm context) {
# ]$ [8 y8 p0 r& `% A5 t) ]                super.activateIn(context);
  J6 p8 {; |' [  C9 F6 k6 X' R                schedule.activateIn(this);
/ ]5 B+ C! C: f" M; ?, h                return getActivity();1 e  t: ~+ q1 h  N7 e* Q" C
        }) x/ O: o; W. r5 a( y- a
' H! F5 w+ I# v( r- v7 c
        public static void main(String[] args) {
% O% x. g1 C' p+ N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ i4 o  D6 p+ o% U( r& Y4 @+ Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* y4 c4 _9 R% F' T" ^6 V2 a                swarms.buildObjects();3 O4 T; f# K1 |# M
                swarms.buildActions();
5 n5 }8 v, x6 `9 T                swarms.activateIn(null).run();
- T" p+ p: D+ Q; B        }" F6 U) z0 G! e+ f

- ^" `) o# l4 \" ^. k1 a) e# y. U}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-10 14:05 , Processed in 0.014838 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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