设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7059|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   T* n" {) p7 _: f, U( f2 J

: J" F9 V* u0 E% S& X- D* I; m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 B) j1 I9 F) c" N  e' ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) f9 f. x0 y1 l& C0 t0 ^$ h
swarm.SignatureNotFoundException( G- j/ ^$ ?+ Q8 W! q. ~0 Y
        at swarm.Selector.<init>(Selector.java:76)
" `; K  B- s( D& K% ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. y' X# |, O; V, K* [/ X        at ActionGroupDemo.main(ActionGroupDemo.java:67)) q' n5 K: u# }3 T# e. {

& G. G* ~; f5 [" H" ?7 z+ y) n* `+ c6 V, N
import swarm.objectbase.SwarmImpl;# e% `9 S7 w3 k  y( ^3 I0 O  Y
import swarm.objectbase.Swarm;
* A* O, x" W2 A5 Uimport swarm.activity.ScheduleImpl;
. e# V% V. }$ ]  W$ f# u* L* rimport swarm.activity.Activity;$ S8 o5 R! {& n; Y8 j2 C
import swarm.activity.ActionGroupImpl;$ I9 A0 C6 V! R" Z- o) @/ Y* S& T
import swarm.collections.ListImpl;; g5 K& C) r8 B5 [& y
import swarm.defobj.Zone; ' ?# W  v$ e# O: a
import swarm.Globals;1 `' b4 |5 D; N' U
import swarm.Selector;" q' d/ s  v1 I6 f" m8 l
import swarm.activity.ActionGroup; 4 p6 X, N, D! v: `/ W4 V
class Agent {. [3 o$ l% g7 A7 |2 t
        char id;
9 j- p8 V) d5 ~; J
8 [( F$ Y1 g* B3 J        Agent(char id) {* Z0 P  h1 r; }8 |
                this.id = id;
0 w# Q) k% n8 X' L/ K9 Q        }9 M' {+ F+ x9 Z
7 j7 p, H  [" Y, `9 C' S: _
        public void agentStep() {' Q. V3 M! Q" c" g( R. u
                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 A$ A! i$ T! T3 {: ^2 ~        }3 l+ D. [# c" y3 f5 P1 i
}% G  H& E# Z- x

0 F3 i% s/ \  V1 T# ipublic class ActionGroupDemo extends SwarmImpl {( e, l  x1 n& Z0 u: A; E
        ScheduleImpl schedule;( a  q' i) Y2 ], l& ~& C- ?4 s
        ActionGroupImpl actionGroup;2 t; C% ?! |- g+ P4 U
        ListImpl list;
' P  a0 H$ W* y+ U# {+ L: ^        char Id = 'a';
8 A( A7 `# D8 Y- h& p
2 W2 W4 ]5 ?& Z1 F3 D2 X' D# p        ActionGroupDemo(Zone aZone) {
& o4 g- Q8 Q  ~0 v                super(aZone);7 h- E! A0 T2 ]2 E8 u& E
                list = new ListImpl(aZone);
8 h/ p- Z8 _) F+ }) A                swarmSetp();
0 @8 W. k7 ]) S                actionGroup = new ActionGroupImpl(aZone);
/ x+ R* q  g6 T' O                schedule = new ScheduleImpl(aZone);: @2 {; W' M  {
                try {
# a. @0 h0 t4 C7 _- Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 R, ]3 @+ U* H7 V  T7 ]' G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; d2 u2 \( j* d6 v1 ~  c
                        
) r" ?# q; K9 @                        actionGroup.createActionForEach$message(list, agentSel);9 j  `4 L, b' `; e
                        actionGroup.createActionTo$message(this, swarmSel);% j( X8 ^* T' n) {
                        schedule.at$createAction(0, actionGroup);
/ u$ [7 A8 d( h9 F( \  T. S  U/ D                        schedule.at$createAction(1, actionGroup);9 M- d) B$ [, K
                        schedule.at$createAction(2, actionGroup);
6 y8 W$ ]& d0 S7 ^8 Z' u: ~# e2 v8 d
                } catch (Exception e) {
, n% \' O& Y! G                        e.printStackTrace(System.err);/ t) I7 [3 a- r1 G$ V
                        //System.out.println(e);3 o: u, ]( c7 ~" l
                        System.exit(1);3 j( n/ W3 K8 M/ u: w" L. u( O7 Q0 l
                }
; ~% B$ z( |" c: k( K& V
1 _- e& z& z# l  R7 ?' K( u8 m( R7 F+ ]2 q4 `. x
        }
" ^& E- ?  K! a& n' \$ ]9 o# `$ {/ C' W. p! r, e2 h
        private void swarmSetp() {+ S- n: M, F/ E- \
                list.addLast(new Agent(Id));
. X1 ]7 h6 _0 l" Z                Id++;7 c+ E- L, X, E% h1 @% _$ h+ S
        }
2 X. e1 K) c/ B3 w6 S+ B0 X
4 U) e$ ^4 p' q# o. o        public Activity activateIn(Swarm context) {
) A! F6 B# k5 z9 w                super.activateIn(context);; l7 W1 |( D6 u! Q! l( L
                schedule.activateIn(this);) G) n, `& {) Q& `1 J6 E9 l& Q* a
                return getActivity();
" U5 y" j0 y: O; S% P, S        }
6 y# o4 j( {, S# |' ?& x5 F* x( p/ X
        public static void main(String[] args) {3 Q& Q9 }3 P! r2 s4 B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 d. T7 R8 f0 @8 N% A6 Y; ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- n7 J- Y, K  L. A
                swarms.buildObjects();
6 [9 y' @6 o& E  S/ n6 u" t4 D                swarms.buildActions();
$ u7 q/ |, g0 u. T8 h/ ?. F% u                swarms.activateIn(null).run();
% k- p- T7 I$ r; h0 d4 _- E- \8 v        }
( d4 I; w: P' y$ _8 |3 q' Z9 d7 |$ s$ k) i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-18 02:13 , Processed in 0.024119 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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