设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13941|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 E2 E  S4 p% a0 F
& B5 o. s1 k. W' o; S# h. H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 z9 n- s. z. u: E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' q% @, O7 z3 _5 L0 n' A
swarm.SignatureNotFoundException! b1 b4 x$ S% x/ L) V: E' G
        at swarm.Selector.<init>(Selector.java:76)
0 z; q6 Q2 C$ L, a. i# |1 i( b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" r& q; h. L$ ~6 {% o3 F* b* e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 ^9 p. q9 w7 V9 U8 Y
: D, D2 V9 u7 h
9 a* r( i8 B1 U3 G  C7 M0 G, [
import swarm.objectbase.SwarmImpl;6 r- `" v  ^# k- B: A" ^* [
import swarm.objectbase.Swarm;
6 X8 S' C8 z# \  T$ o/ J8 Oimport swarm.activity.ScheduleImpl;
5 H+ }6 T. |: Y. ?import swarm.activity.Activity;( L3 N* _! E, h1 ]  F
import swarm.activity.ActionGroupImpl;. n: M5 m$ l5 L  g+ V( I$ z
import swarm.collections.ListImpl;+ n- j: T) D2 \0 p7 h8 |3 [
import swarm.defobj.Zone;
, o5 ^$ y1 t( y' [import swarm.Globals;
7 |: n# f( R& m9 o1 K4 t- F4 Gimport swarm.Selector;
; m* T( M) q! R( X7 e/ h0 |1 H" aimport swarm.activity.ActionGroup;
' v- G( v  v" Tclass Agent {
0 v2 {# v$ U4 M  I( T        char id;6 [4 j; ]1 q( u  R- [

+ t" e: U2 H  G* ~$ Z0 n* f- f: S- C        Agent(char id) {; c3 f3 B$ b5 W
                this.id = id;; C/ |$ n4 z% @; V- w& ]$ f7 K: w
        }. P8 Y- T0 I5 z! x) }

+ n: b8 P! D9 ^: j% q        public void agentStep() {; G/ m+ n3 t: r
                System.out.println(id + ":" + Globals.env.getCurrentTime());: e. M/ U8 B2 B" u( g
        }% c$ \% _) i1 r2 U- W2 w
}2 x) R3 \  k: P* ^) w

8 J8 u, R  |/ Gpublic class ActionGroupDemo extends SwarmImpl {1 {' @2 M' `8 ^
        ScheduleImpl schedule;
: x+ b( b3 X! c5 q        ActionGroupImpl actionGroup;5 e/ t0 H$ I; a% V, i) Y
        ListImpl list;" h& s5 h8 Y0 t# x3 O
        char Id = 'a';. \3 e# H) s' w" x( O7 s

  O) v# s* i8 ^8 F        ActionGroupDemo(Zone aZone) {1 T% J0 g, I0 `! @7 @4 ?
                super(aZone);0 `3 `  E* [  j& q/ P; M' \2 w- }
                list = new ListImpl(aZone);. c* p6 F% Z! [) c9 P
                swarmSetp();% s- u7 T( l/ n
                actionGroup = new ActionGroupImpl(aZone);
9 X/ {* f$ v, A* {                schedule = new ScheduleImpl(aZone);
; o, x9 K1 I! H& n# e$ @, y& W& k5 {9 W+ p                try {! j% N& B. c, c. p' [  f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, i% H0 x4 y8 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* G) N3 z) H. V; C0 y
                        
( p9 X8 B9 _9 W& J! \1 R                        actionGroup.createActionForEach$message(list, agentSel);
4 F9 ^$ ~* ^& C4 K( Y( ]                        actionGroup.createActionTo$message(this, swarmSel);% [5 @& c: K  e3 ^, M  U
                        schedule.at$createAction(0, actionGroup);( S( G4 L4 g" D$ _
                        schedule.at$createAction(1, actionGroup);/ v4 M: w; F$ N! G
                        schedule.at$createAction(2, actionGroup);
: K; p* |5 [) z
$ A1 T1 K9 X- K                } catch (Exception e) {3 A4 q3 \4 P; N  J0 u
                        e.printStackTrace(System.err);
; }- `& J" B' G                        //System.out.println(e);* c+ a3 J* J% V+ m
                        System.exit(1);/ K& P% J. _$ H$ [% c1 u
                }
+ _+ g  L) i. x) f& l- l- E0 ]- W  A6 n  D7 Q' V
2 P0 d$ t. z# T' a* v+ Z
        }
$ x( F' k4 M0 \8 P9 q
9 t& h! O/ f7 T. l5 s! H" e        private void swarmSetp() {% e, ?: p5 L; F6 Z
                list.addLast(new Agent(Id));
1 N& R( k6 P6 i! N% C. j                Id++;( @6 z' c. c, P$ \: ?/ ?  _: d+ L. X( }
        }: }8 N; B7 j1 n% Q: n; m

7 j: ?0 w% R/ c, J: _9 I: d3 B        public Activity activateIn(Swarm context) {, D% O! h4 ?, a" B* E8 u
                super.activateIn(context);
9 x7 x( T- o/ l; ?- W) K5 F                schedule.activateIn(this);
- v2 |- n  X, P, @                return getActivity();" A/ ^' k( Y- A
        }
: H. U1 N1 U' q( d& P. t( p0 ~* m7 z2 c' H
        public static void main(String[] args) {; Y6 u7 v, }* F) c" x
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 }8 l: C- H( T* b1 ]/ m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) r- t6 h7 E6 ~9 V! A4 t                swarms.buildObjects();
5 l3 w0 P- y8 Z' i                swarms.buildActions();
! N! N/ v8 Q8 U/ O                swarms.activateIn(null).run();9 j! e0 o3 |1 @: y5 |
        }- Z4 T# d7 ^, i5 X2 u. p
/ {7 _4 n" x1 y: y" M, ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-22 11:23 , Processed in 0.015061 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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