设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8349|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* p' J1 V+ K  v8 R2 K
2 M6 ~7 O3 Z: }' D2 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 O9 ^1 a5 ^7 f, u/ u. A0 Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 p& e$ ?/ Q! G7 ^6 S
swarm.SignatureNotFoundException; g7 b6 ~; x" [6 T6 e
        at swarm.Selector.<init>(Selector.java:76)+ z: @5 U+ m( I+ a/ M# P: E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); m9 S% Z/ k9 F4 J: j8 x' G! j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 N0 y9 [4 i8 r9 {# `& t4 a6 ?! O6 {' R1 \- J; X3 t' @

$ |% w+ l+ H: |  Y4 l" @7 ?import swarm.objectbase.SwarmImpl;( q0 z1 Y5 R* S
import swarm.objectbase.Swarm;5 J' F6 `! E2 D: Q( X- T
import swarm.activity.ScheduleImpl;! }* U2 w% f. Z$ e0 k9 v
import swarm.activity.Activity;8 i: A3 x8 a! |. C' x
import swarm.activity.ActionGroupImpl;
3 V( z$ E1 y! Himport swarm.collections.ListImpl;
* E* Z- q& X! t! Cimport swarm.defobj.Zone;   e  [  Q) w1 c
import swarm.Globals;6 }0 l0 o2 i, u* k; N7 p
import swarm.Selector;2 I4 J; M6 y+ y7 ]  ^
import swarm.activity.ActionGroup; ! I; g' c- _. M: E
class Agent {
1 X" o7 ?) V2 r: s  K; d4 e9 n. f+ n        char id;
% y  o, Z) j2 J" |8 l7 V, E: y* `7 ^  [: G9 n
        Agent(char id) {1 N- ]6 W, X7 P
                this.id = id;% ?8 U9 d4 z# T
        }. Y8 Z' d7 `8 e: `0 L% [$ x
6 K* ]1 F+ k- T% p0 o
        public void agentStep() {2 j) e6 R2 p9 b0 M7 f
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 V* J- L  G1 @% y5 j, `
        }2 p7 j7 N2 A0 G& z  u# t2 b; F0 a
}
2 L: t9 Y1 I7 D4 b. B4 z, w# [* M' E% A6 Y+ o
public class ActionGroupDemo extends SwarmImpl {
' K; Z, w+ j) `# }7 _* e1 I        ScheduleImpl schedule;
+ A# Q# G, W+ r  B! c        ActionGroupImpl actionGroup;
0 a: \  w6 H# [% U) g* ]4 Y4 A7 ^        ListImpl list;% T3 m1 J% E4 ~8 @& k
        char Id = 'a';
7 X5 k2 r: S% ]. Z( J2 L
1 ^2 X& Z. z% }: ^( g, u6 P        ActionGroupDemo(Zone aZone) {" f, O" E/ F3 Q
                super(aZone);
1 ^! m( @* v% H                list = new ListImpl(aZone);
4 S3 B/ s( ?; T5 j) d                swarmSetp();
$ E1 N" H% C$ Z  N; \# x                actionGroup = new ActionGroupImpl(aZone);
: k1 r- p8 f0 w* i- P                schedule = new ScheduleImpl(aZone);* Y! g% w* P# _/ I
                try {% ?  P7 J+ n; z9 a3 q; T: d- V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! H4 K3 E' d; w: Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& _" u' ^+ a: ]8 }                        ) H9 s" O. l* p- d5 x5 Z
                        actionGroup.createActionForEach$message(list, agentSel);% [& A. P. p; j3 J6 m  O6 z
                        actionGroup.createActionTo$message(this, swarmSel);
& z# v7 ]0 r8 E6 o1 Y2 {                        schedule.at$createAction(0, actionGroup);
& u8 N4 H& h' |9 N4 b4 K4 K5 {                        schedule.at$createAction(1, actionGroup);( U7 R8 q2 f2 n
                        schedule.at$createAction(2, actionGroup);3 c, b- U9 K  x" L6 w) K# x
% t$ j9 @5 t5 u$ b8 `
                } catch (Exception e) {! _9 r- w5 h3 r, {9 o/ x! [
                        e.printStackTrace(System.err);
7 J' `7 V9 D+ q                        //System.out.println(e);
" b$ x0 O$ D9 v1 w. O2 p                        System.exit(1);
/ m2 S3 _) v+ V$ D  g) f( j                }8 z( S! U  ?* }/ c
" i# b: ^- t& X
& ^7 I" Y8 w* l1 G
        }
1 H0 \- Z. X7 X8 {6 T( N7 p: C. Y1 j  n+ _5 U+ @5 Y
        private void swarmSetp() {
5 k# l) \) {& j5 F; Y                list.addLast(new Agent(Id));
. s- I* t& y! q0 L                Id++;
9 a  {9 ]: k9 \2 K% N$ c; v0 d  G        }& h" D, X! k; S/ e, ^( j
6 S; q) `! c3 [% u' t) U
        public Activity activateIn(Swarm context) {
( B% \# w4 O1 ^. D                super.activateIn(context);
( j5 e* d9 v& W                schedule.activateIn(this);
: S) o! q- a" k; |; G                return getActivity();1 X. }) `! M; c  [  X
        }
' s8 G5 c- R! Q! C8 i
: G. O3 |; R# i- j        public static void main(String[] args) {3 L2 f9 s# G1 l! q1 @0 b, S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 q; g& u8 P* |. K) T  A% t( ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 U' ~5 r4 Q1 x, `. }# k- c3 J
                swarms.buildObjects();6 Y9 l% b* r9 w5 t" _4 X8 E
                swarms.buildActions();2 Y3 l- _2 c$ I2 _3 h# i- W+ i
                swarms.activateIn(null).run();8 C, A8 a# o6 {: L+ H
        }$ E7 I( y8 F9 s3 e( d* g$ \

$ B, s, M9 ^9 t* X0 F) r4 r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-9 02:26 , Processed in 0.016795 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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