设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11245|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 W( k& H: f7 a' ^
1 Y* w* o0 z1 E* S% `  p6 Z5 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 T0 _) ~: t0 x5 f+ r' [) s! v; C* m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& j' d7 A/ z" H8 y1 F$ _3 aswarm.SignatureNotFoundException5 U0 d5 m8 {5 r$ J! `/ l% r4 S
        at swarm.Selector.<init>(Selector.java:76)
7 G; R8 F$ j+ L( [+ c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); y7 T8 f; s2 y, V6 G  F7 }7 A8 P& E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. G) x" u) ]+ I4 W' J9 C
- o3 x7 `) Q" L( [
- y/ H% Q, V+ U  q. ^: ]( r/ Ximport swarm.objectbase.SwarmImpl;
" o  t. \" w" R" L* ?7 V/ W6 E& `4 @import swarm.objectbase.Swarm;2 \% E9 ^6 T* h5 Z* V
import swarm.activity.ScheduleImpl;8 R- n; H( |* \( T+ U  K! E  @+ p
import swarm.activity.Activity;6 F( q$ N& s. W+ C
import swarm.activity.ActionGroupImpl;' c+ _$ B) M- U8 a2 m8 z
import swarm.collections.ListImpl;( n) c9 M& `  v* N$ n! o$ n' x
import swarm.defobj.Zone; ! ~8 x; C8 H  r% i- d& b" t6 ]
import swarm.Globals;; n/ x9 g; O/ h4 o+ L
import swarm.Selector;. w# I1 o" u% E* u: J
import swarm.activity.ActionGroup; ( N. e4 \0 X  K1 R9 ^
class Agent {# e, s: B4 V' F/ N! Z
        char id;
$ J3 [- j+ l+ @& A! u# \2 \
1 C4 I/ X0 N9 J' q        Agent(char id) {9 T0 h7 x1 ?! a% }2 ~
                this.id = id;
8 C3 ^) Z# m1 W" v1 W  w5 o- O6 l        }
1 e1 Q  |6 X9 K6 O$ p) G/ h# {+ d6 }! L/ n1 k
        public void agentStep() {- [* K' n& E5 G/ R
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 g0 y5 ^* ]1 z, _' X/ U) f- _$ x        }# @/ W! ^9 t  I1 D
}. _# f- a. j; z& S* I2 m0 N! W- i# W& F

; r6 @5 v) k1 q3 w' y' c8 M1 Apublic class ActionGroupDemo extends SwarmImpl {: r3 y; x8 Z& `( z8 i2 P& @
        ScheduleImpl schedule;' }4 X4 C6 x8 u" ^& ~& h  X
        ActionGroupImpl actionGroup;+ i& P& O; [8 F* F3 ]* ?6 \7 b: S
        ListImpl list;
1 V* _$ D; Y& B- c, m1 s        char Id = 'a';
' k& h8 X( e* E9 x. r% O7 s2 }
9 I! J' g% ?6 Q        ActionGroupDemo(Zone aZone) {( a# _! S5 _# j$ D8 T
                super(aZone);9 q! J" a$ N% @) v
                list = new ListImpl(aZone);, C8 a0 [/ l: [  o) V
                swarmSetp();
+ V6 W0 e( q$ i. ~1 a$ ]  p: e                actionGroup = new ActionGroupImpl(aZone);
2 J* O  I" o; [- M$ V2 j                schedule = new ScheduleImpl(aZone);
# R( G" l* `$ b9 w                try {
5 d; `7 H* C. v8 }& P2 S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 d# {6 R' z. ?4 F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! c, H1 m2 ?2 u9 E* j
                        - q( t; ?5 I) ^( q9 c5 z/ L
                        actionGroup.createActionForEach$message(list, agentSel);5 \( V  e" C2 c1 q
                        actionGroup.createActionTo$message(this, swarmSel);
" V* Q# H) f; f, H8 K% b) d2 q                        schedule.at$createAction(0, actionGroup);
0 \& I+ I; j/ y& \                        schedule.at$createAction(1, actionGroup);! n4 ?, v6 ]* M8 T
                        schedule.at$createAction(2, actionGroup);
/ ?# Z( F, w4 n
' P9 s' h  s6 t1 ]/ O                } catch (Exception e) {
& E- x6 F) u. F' A) Y7 I& a                        e.printStackTrace(System.err);9 l1 y/ A6 _% n: P! q5 d
                        //System.out.println(e);
. D! J3 r. N( @$ Q2 H% O                        System.exit(1);" o( [' F: _: @6 h  e0 W
                }
0 c- x2 C# x( G. T( {" f& F; L% R. w% p/ t
2 F  V! r, u6 @: g. o4 g- W) r
        }+ Z6 N& J2 M( X( h' ~
0 F, ]; J% w+ N+ _; y
        private void swarmSetp() {5 c2 d' }2 i8 i- _/ |4 n) a
                list.addLast(new Agent(Id));
. k" y' Y0 i% t4 s, ~$ H; a5 \                Id++;$ F% q4 m8 S6 ~# V+ j! P
        }
- T: c1 a; W+ o) k- S
' D$ n. K/ }+ I; e, ~        public Activity activateIn(Swarm context) {0 Z/ o1 N8 i# D
                super.activateIn(context);
5 |: Q" L% Z& k: r                schedule.activateIn(this);
6 A, p' K* M5 I; c3 M( i# Y: m& u. m                return getActivity();
& B  v/ E( u8 \* @        }. p3 _! [+ E: ^6 p3 @4 \$ P; c# f3 s+ |

% F7 W7 w0 i& F5 Z/ w( E) P        public static void main(String[] args) {
/ V  [4 {8 f1 u; d! c+ i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 w0 G/ x5 D& S) a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. S: n2 T( r" w. }9 c1 l1 w                swarms.buildObjects();
* {- W& K4 j6 X                swarms.buildActions();) N) P5 |3 W' M1 N+ w  q7 ?
                swarms.activateIn(null).run();
6 ~( f6 p. T& u0 }; d  G/ |        }
! r+ b# T4 i! ^
7 K. ]5 a1 g& d! D# {" Y7 p) }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-7 05:49 , Processed in 0.013803 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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