设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7823|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 ^4 |  L! c2 G; M, k( v9 |. e
4 _) z$ o  S5 m% S  X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* J# k$ `! H; E7 v$ Z% S6 ]1 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* b3 S: Z: U% U
swarm.SignatureNotFoundException
8 F& y" j$ r2 t& h        at swarm.Selector.<init>(Selector.java:76)
6 p. S$ M7 z% j' j4 r0 {; S' ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" n# a; I2 k; S$ j: H; E' N, I
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 X* @6 Y0 {6 X; K- d& c: H4 x  N2 x& B; l; i# t$ s

# C4 e+ }: {: Q( O7 fimport swarm.objectbase.SwarmImpl;) D" l* E" Y4 b6 O# w
import swarm.objectbase.Swarm;
" s+ g3 A) I; r! O9 Y: rimport swarm.activity.ScheduleImpl;
. L8 |0 p* [  |7 Himport swarm.activity.Activity;$ [, i# A( _5 V1 s; Z7 I
import swarm.activity.ActionGroupImpl;
' g/ T& j5 h) D, Aimport swarm.collections.ListImpl;/ `* \- y4 @* R/ `
import swarm.defobj.Zone; # Y/ B( K% \) B
import swarm.Globals;
" F, }, [1 h  j* @, f1 j! aimport swarm.Selector;2 R# N3 f' P; o4 r, B- U4 G
import swarm.activity.ActionGroup;   M! u3 ^) P" I: c
class Agent {( F; k" y' Q+ a" ?* H+ ^
        char id;5 I( \. r' O$ ]/ v! Z  [% }

5 w9 V7 L2 f% [# x        Agent(char id) {( W0 q8 Y* w" Z" @
                this.id = id;3 t: w# y) }4 X/ t5 }7 m2 t% X
        }
7 a! t6 c8 g! E% k5 r
9 r6 ?: r# Y% K9 `( v; T7 I3 @        public void agentStep() {& X, y; z% I! T& [) d4 m1 g
                System.out.println(id + ":" + Globals.env.getCurrentTime());. H9 L, n9 V& ^- n
        }
4 K9 n& H7 N+ `4 i' j7 g+ @}0 o1 |2 Q% h3 e) e+ ^9 @! Z0 p

0 q* x  U& M& v/ L, X6 U; c" @public class ActionGroupDemo extends SwarmImpl {3 Y: Y0 a' `1 e0 S
        ScheduleImpl schedule;
) o/ B) J( P  O) e+ ]; ?- r( k2 i4 p        ActionGroupImpl actionGroup;, V$ n/ T/ n1 k1 t3 p* a9 P0 V
        ListImpl list;, e7 P, T8 i( [! k. M" J8 v" A$ d: M
        char Id = 'a';
' l% K; R& S+ ?4 N1 G2 y
0 ~( o( v% u9 X% ?        ActionGroupDemo(Zone aZone) {
+ P$ B" _  M! \$ w3 m* u                super(aZone);
, p% V- a/ z9 L9 N                list = new ListImpl(aZone);" T( J: x. [1 i
                swarmSetp();/ n: N7 |9 ~; G4 z: s0 g
                actionGroup = new ActionGroupImpl(aZone);
6 W- {  p6 W9 s" y! J                schedule = new ScheduleImpl(aZone);/ q$ Z7 I2 V8 Q3 e: J' ~
                try {* S  n) h) ^( x$ U1 O/ m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 v" O! e) Z! S0 H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 |3 ]0 b- W9 R/ |8 B# L, g9 {3 B                        # }1 L3 q. |, ?; `* t" C
                        actionGroup.createActionForEach$message(list, agentSel);
  k) x; |! h3 t& F# F& ^/ c                        actionGroup.createActionTo$message(this, swarmSel);
  o$ F! u1 X4 b+ T                        schedule.at$createAction(0, actionGroup);
/ P; r8 U: J; I                        schedule.at$createAction(1, actionGroup);. C- E. o" J% s3 ~  [% @
                        schedule.at$createAction(2, actionGroup);
) p6 M9 d) R9 R8 F) G! F  O- {0 p2 i0 f1 d# j
                } catch (Exception e) {8 l! U2 R0 |$ ]8 r$ u! y, j
                        e.printStackTrace(System.err);
8 Y1 F+ L9 T# E* G- t8 V, n% b4 ]5 ?- V                        //System.out.println(e);! F5 t9 u; P; c' O! G* R
                        System.exit(1);
6 q% _) H! [! X* {- q                }
( q  x0 k# I& ]1 ]: M2 |2 ~: S# ^% v* W
2 x( i+ @3 H% M$ @
        }
) Z- f' ^4 U% f+ @! R7 z) T& k% A8 q  B% O
        private void swarmSetp() {
# n# s( T! i6 S$ S+ ~% K5 L                list.addLast(new Agent(Id));- E" p. O3 Y) j! K. w1 E$ I
                Id++;) b8 w. G. Z$ N  n2 n6 y
        }/ a( `" y( E8 O& o" h
9 y" a% C; y# ]+ M" i
        public Activity activateIn(Swarm context) {
8 P1 U& ^: H7 x. N# ]) u                super.activateIn(context);3 Y+ T7 E) V2 v8 y5 I
                schedule.activateIn(this);
. \# b) _% ]! W' ^# M                return getActivity();5 @4 d7 a# w. z' `
        }
. c* y& O2 r. Q2 ?
( l. ?  g0 n5 w3 Z        public static void main(String[] args) {+ M; d9 z( h' g. J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; @  V0 o' |+ r6 V8 W; ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" C6 N) J5 Z- M2 R% x                swarms.buildObjects();
; r7 q+ @% [: u9 f8 t% Y/ i; X, _                swarms.buildActions();0 m$ @( k2 _  o8 b" r; H8 O
                swarms.activateIn(null).run();$ B0 Y" q5 N( V$ ^3 O! R
        }7 {! q* y% c1 R; m7 o, s

6 A$ Y, q) C6 M; ?- J* O2 Y- K8 C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-16 02:24 , Processed in 0.021493 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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