设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4500|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* g- E5 E! Z* t8 z* V; U, q' ^; B: P! k3 W3 J, W7 i0 i+ {1 Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% j) Q8 Y; e' o3 @# z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; J. H$ j# K4 {swarm.SignatureNotFoundException$ B5 _4 W1 t$ L
        at swarm.Selector.<init>(Selector.java:76)1 r# \4 p# m7 T( B, Y! l" Z, s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% l5 P/ U5 `9 ]/ b' _. F  h2 T2 `% m# A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 @) n# |1 c" |' A# Z1 ~* E" I  r3 V4 z& c" e, z
& T3 Z. M8 r) p8 W, C# ?; l
import swarm.objectbase.SwarmImpl;
4 ~1 t7 [4 B$ Z# k, Uimport swarm.objectbase.Swarm;( A+ p8 L0 H& R2 t# ?
import swarm.activity.ScheduleImpl;
2 Z% D: n8 p1 Y+ J# [; {import swarm.activity.Activity;
+ l% d5 }: `6 i6 M  Wimport swarm.activity.ActionGroupImpl;
; s" n/ F+ X. h: Z( u6 D) Rimport swarm.collections.ListImpl;
7 a4 y% L; L1 i9 E+ S) yimport swarm.defobj.Zone;
; y, T2 h; n. v' t9 ^7 O6 Limport swarm.Globals;/ Q: h4 v7 j$ Q8 U, k0 y
import swarm.Selector;8 \8 j) G* G% T9 @
import swarm.activity.ActionGroup;
2 d/ @- {$ R* ?" o% Sclass Agent {5 @  v% w( \' Z2 O0 s
        char id;7 h; F6 s2 P4 t4 M- @( o
1 N; y' ^! E/ H. Y
        Agent(char id) {
. z+ k( m- L$ J                this.id = id;3 \+ O! c, i: R: e5 y
        }
6 |/ P5 L* F# E0 O; L' p, q
1 K$ ?' _: _6 \. f; B        public void agentStep() {
- K- }$ z0 V6 u- H* t                System.out.println(id + ":" + Globals.env.getCurrentTime());
' @3 `+ f1 ~8 ~* U- e$ Z* p0 f" r        }$ I2 {8 l, Q4 w1 o5 z1 c
}9 M# ]3 z% @- {

2 \% u1 K+ G% H8 Y+ q7 L: k# jpublic class ActionGroupDemo extends SwarmImpl {
/ `: B/ }$ ^! t$ Z' I        ScheduleImpl schedule;2 ?1 j# B8 V: X
        ActionGroupImpl actionGroup;, j: }- e$ w* t, k, g
        ListImpl list;
* e( E" e' g: ?9 Y$ c        char Id = 'a';0 }& L4 @9 X9 l2 h. ^
0 V0 p" F. Q6 A7 T6 y% K5 O
        ActionGroupDemo(Zone aZone) {9 N: E  w6 {) m
                super(aZone);
! y9 F/ F5 }: c" l6 U/ z  w                list = new ListImpl(aZone);
9 i, u' _+ B/ M9 `, E- I* c                swarmSetp();& t- ^7 T  V* G$ J+ S1 \4 @" [7 l' D
                actionGroup = new ActionGroupImpl(aZone);. I( ?# P- S7 K- U" Y& o
                schedule = new ScheduleImpl(aZone);) q) T* h* ?, T
                try {
% e2 ~2 z- o! z1 i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 a* W7 d6 F7 W" o  k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" E8 r9 H: h8 ?! [                        3 C( P0 s, K; V0 c/ c" k6 v8 @
                        actionGroup.createActionForEach$message(list, agentSel);
5 r: w7 P4 E1 a5 G' m! n                        actionGroup.createActionTo$message(this, swarmSel);
* W0 r+ I3 ^" O0 h( g* Z                        schedule.at$createAction(0, actionGroup);7 d+ W4 k; T0 h! I- a" ^2 D4 A
                        schedule.at$createAction(1, actionGroup);
3 ~: O% ?' q9 A+ B  |) t  r                        schedule.at$createAction(2, actionGroup);! a' H3 N# h- ^3 Y/ L) A3 r

9 ?7 j3 p$ R/ k& u+ D                } catch (Exception e) {
* S& P- {0 w" i! _2 m                        e.printStackTrace(System.err);
3 A& _# T# B% n/ s+ Z. _                        //System.out.println(e);# ]  F2 D. y; j9 A; r3 i* \
                        System.exit(1);6 e2 l- |5 G  y% b: z( T- m7 p
                }
* G  v+ G% `, l* I; d
) O4 X0 d7 e. N) D" T, E0 i% g1 B3 h2 v& L' {
        }" K6 R$ f9 h: ?
  U0 c: f- g4 k
        private void swarmSetp() {5 \$ Y' W! ^1 h4 q9 @
                list.addLast(new Agent(Id));8 M/ f8 P4 Y' ~4 H" l8 [/ X0 f! ~
                Id++;: S( M& i2 r8 n$ o$ O
        }) u+ K( k" t# U  d" t+ f4 ~
" O$ P3 b& P3 o3 P
        public Activity activateIn(Swarm context) {  K! s9 n2 K( P
                super.activateIn(context);3 }, ^. f1 `, _1 @
                schedule.activateIn(this);
  C/ @, y+ p; l* q- M                return getActivity();
. v( b% M1 M' i& f3 N& z3 \        }8 J* d2 K' Y4 }3 ]3 {- X3 H

4 U" o6 g  a6 n; ]+ Q        public static void main(String[] args) {+ Q) _# U% e. K0 j6 x; s: h
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 y. N% _5 k- H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 B6 }6 I' o' e. B6 R/ U3 e
                swarms.buildObjects();
5 n3 u( o3 u0 p, h$ d                swarms.buildActions();
1 z' ?% b/ t, Q; o3 ]/ P                swarms.activateIn(null).run();
8 f2 w8 g8 z+ @- v% x, H0 M  c$ s" v0 }        }
  u- U, r7 u% J8 v7 @1 X
$ V1 t+ M3 G7 w+ z' `: t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-16 14:24 , Processed in 0.015786 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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