设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13442|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: f9 W/ y0 D+ w* X5 f6 I! f# B0 x9 o# v+ a6 ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, x3 G. S5 Z$ F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- C) v* U, F- n2 ]
swarm.SignatureNotFoundException
, M, g  t# K% M' w+ k        at swarm.Selector.<init>(Selector.java:76)- T* q4 L9 |- N1 ~/ F
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# l: G% j8 K% v$ F0 u  A        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' l) N- ^# r* T) V3 t, Y% e! o' h% ?8 K+ v

6 i$ j" U0 N2 P: P# s" n' dimport swarm.objectbase.SwarmImpl;8 ~- R5 \8 c8 a  A
import swarm.objectbase.Swarm;
8 g  Q# y1 R  J' G3 x  iimport swarm.activity.ScheduleImpl;1 o5 `% S: {, e$ U2 @
import swarm.activity.Activity;& w1 q& D$ I0 ^' F8 @' Z7 a' V: p
import swarm.activity.ActionGroupImpl;) Y5 r8 p. N$ h/ S- Y% T2 i5 [
import swarm.collections.ListImpl;
2 q+ f+ p2 z! c" O7 rimport swarm.defobj.Zone; ( k5 q# W. D' W
import swarm.Globals;$ c# ^4 x5 O3 K& a" c1 W) G6 i$ f/ m
import swarm.Selector;) e4 Z% C* W8 P: l1 B
import swarm.activity.ActionGroup; 2 q- z! O; V! }5 \) t" H2 \) Z
class Agent {
; ]( A- K6 d$ {; [& W        char id;/ l) p: k6 @- q" H: b& n# E
6 |# Q# G1 D% z3 X. }  \
        Agent(char id) {
/ Q: ~4 v- v) S% Q% w# R" }                this.id = id;+ Y' e- w. R4 j7 S3 w+ J+ b
        }
9 [$ S! x& H  A
( h4 S# X1 K2 S) [) v" a        public void agentStep() {
0 J* ^! y' i7 W" e+ d) t& N                System.out.println(id + ":" + Globals.env.getCurrentTime());* \7 g% q& W7 T; p
        }
: Q# Q/ V1 e6 u3 A0 X, M8 c( U! e  `}2 ^" }& `! |: S% ?

1 g# x$ t% W: W5 _6 E* Fpublic class ActionGroupDemo extends SwarmImpl {
' H) e( u" B: v- v& j1 c" P        ScheduleImpl schedule;& S' C7 @2 H% \, s
        ActionGroupImpl actionGroup;
7 |7 u( x0 K5 e. J1 F        ListImpl list;  ^: H" s# |! n: B7 W7 l. b
        char Id = 'a';- ?/ w; b: A" b/ G  A5 k2 {8 _
+ K) I" q/ k8 y2 q% q
        ActionGroupDemo(Zone aZone) {
; s$ r" J8 N: Y- V                super(aZone);
- W2 U4 o7 C/ H                list = new ListImpl(aZone);1 x( R, |6 r) i8 t% i: }
                swarmSetp();3 m0 ]: r5 \! ?, l5 D
                actionGroup = new ActionGroupImpl(aZone);; F! F, G  B( q
                schedule = new ScheduleImpl(aZone);
0 D% w& X1 g: _1 G                try {
8 U) s5 z/ C  I% K# m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 _5 ?! s2 q! K: d$ K( n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# P* }2 v1 B! q8 {$ v
                        % X3 {# p' u/ T
                        actionGroup.createActionForEach$message(list, agentSel);+ h& o, s9 {/ X& `) s5 h# o
                        actionGroup.createActionTo$message(this, swarmSel);
7 Z" s0 W8 h$ K% L; f! m. q                        schedule.at$createAction(0, actionGroup);5 ~7 u7 ]& `( a) z" M: R; [' d' S
                        schedule.at$createAction(1, actionGroup);
5 d& h5 O7 T9 L- O# E) w                        schedule.at$createAction(2, actionGroup);
/ u! O8 T  Y) ?. x5 f+ W6 h* {- {0 R' @0 d
                } catch (Exception e) {
+ I8 l, S4 I% h% U                        e.printStackTrace(System.err);7 y) s2 @  |) d) W
                        //System.out.println(e);
6 R2 e1 `& @: X' k                        System.exit(1);3 x: i# L; M8 C, V3 e/ {
                }
" v: ~" b, W) x3 x+ K' r, B2 _& |& X/ Q2 Y2 n. I

/ ?; Y" R7 ~# O* `* M% ~        }5 L+ W2 V; h. T- m2 Q. L, W
7 }6 U7 b0 m0 k' H. r$ Y
        private void swarmSetp() {
" O* I  k% Q$ `+ i( Z  B7 p9 Q                list.addLast(new Agent(Id));; `  U7 m' M+ K3 p% ~+ L" K
                Id++;3 A4 L( f- }+ L- E% r" v
        }& w- Q, {1 @( V: X8 _" o

3 i( j( ^) C1 r6 q5 g( ~        public Activity activateIn(Swarm context) {
% G+ N0 T! O7 O: {                super.activateIn(context);
" F2 z& d( W# T9 ^                schedule.activateIn(this);
2 _1 [7 T" t0 q  ]4 h2 c                return getActivity();
$ L: m. `- @# W/ {& K! |& G0 b        }
# J9 p9 `, Q4 }$ s- j0 ?: J
. O; g/ B! c& j% k        public static void main(String[] args) {
9 T! |5 F( I. @1 _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ^7 N* t, U8 j+ w9 X: D" z1 a' h. ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 L2 v$ z; p- Q- F( h
                swarms.buildObjects();( Z$ K- `2 I. H  Y5 Y5 h
                swarms.buildActions();
) }7 b$ w  M" |* j. Y4 S7 O! A, Y                swarms.activateIn(null).run();  u5 F$ d# m8 w2 c7 x$ k& M
        }: }9 V2 i% y5 A
% F' A5 U+ D' ?9 q0 v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-7 05:46 , Processed in 0.017035 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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