设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13955|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 R+ X% Q& o! \+ C: d

8 ~8 |) g4 K" E* I+ @( ?( g) J' l( x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 q' H5 h4 F  \+ s% {  ^7 Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# J4 W% P& p7 y. u" i' u- ~* O4 W  R
swarm.SignatureNotFoundException' Y* p- u) @8 q: C: y) `5 Y( B
        at swarm.Selector.<init>(Selector.java:76)/ P6 S9 Z. j! x9 b3 `# r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' |" ^& W: `6 }; H2 E( n        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ r" s8 Q3 O2 V, w" V4 R

* S' p' B# T5 y$ h0 C/ p2 B. U+ j7 v- b  f2 E$ k6 U# _
import swarm.objectbase.SwarmImpl;
% R6 @4 w; @1 P  ?7 G7 k( Fimport swarm.objectbase.Swarm;
5 R" j. n" ~( n! ~- a% Eimport swarm.activity.ScheduleImpl;: g: U! g" ?& ?0 h6 ^
import swarm.activity.Activity;
6 g" M- T( `8 N, b9 y" dimport swarm.activity.ActionGroupImpl;
- N: s& p( p1 N) n; \- gimport swarm.collections.ListImpl;
& Y, v% i0 }# M1 W, \import swarm.defobj.Zone;
/ D6 [) O$ y: s3 X1 {9 @6 fimport swarm.Globals;
6 }' j; k  e# U4 l/ iimport swarm.Selector;/ U+ i& B. P! K
import swarm.activity.ActionGroup; ; i# U3 H' u3 H: O+ E
class Agent {! c% ~* x' @9 w9 e* T
        char id;. m6 C" A4 E2 @+ v1 R

. g5 i6 R0 w7 a& n        Agent(char id) {
. x9 w& T9 b6 o% {# ?, C6 d' i                this.id = id;9 z1 n2 x. Z) e, S' g) U
        }6 O6 c+ x1 W4 V: N1 c5 b
" P; D5 I2 D4 \( P9 @% K5 e
        public void agentStep() {
" q- N1 n% J, X8 w4 W6 Y                System.out.println(id + ":" + Globals.env.getCurrentTime());
- W$ h" T2 E$ Q1 A1 c2 H        }
1 E* f& q$ U1 E: \) p}
% j2 c! y9 B) k9 p$ s' H/ C% L2 m# N" O" A. O
public class ActionGroupDemo extends SwarmImpl {% a3 `$ f% {' B/ H+ g+ j
        ScheduleImpl schedule;
5 P3 b1 m8 W2 n' h" |        ActionGroupImpl actionGroup;4 ?& O2 e, M1 s7 H/ g7 e; B& _
        ListImpl list;
) J1 T* t- ?; ~/ r        char Id = 'a';
# a$ j' e4 p) n+ _$ h
% \6 O" P8 p% y  z$ B( c0 t; a        ActionGroupDemo(Zone aZone) {
* W6 R9 k4 y. G7 A6 L% U                super(aZone);' n$ z& |$ d5 Z3 B/ @
                list = new ListImpl(aZone);  {) r) z" R& I8 s: n" V
                swarmSetp();9 Q% P! g. p! v* y( D$ g
                actionGroup = new ActionGroupImpl(aZone);
+ V% F, `5 u! I" r                schedule = new ScheduleImpl(aZone);
  n* t8 @# U2 K4 s% M  n                try {
% d$ [! y$ `% K- o& }9 [3 G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 C1 K) v* c3 I* }# m3 @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' |8 Z; E+ G# R+ z+ J. c                        2 u, w; f- h9 X
                        actionGroup.createActionForEach$message(list, agentSel);
" s/ D9 }# y- D! s1 R1 R! F+ J                        actionGroup.createActionTo$message(this, swarmSel);8 |0 }( B' N+ D0 q! E+ Q
                        schedule.at$createAction(0, actionGroup);) }, Z$ y+ R: j' t
                        schedule.at$createAction(1, actionGroup);9 \2 U7 {; V: h2 K" B
                        schedule.at$createAction(2, actionGroup);
+ H1 h# ~% m' W% O6 p8 H) N9 a& b" }- Z
                } catch (Exception e) {* F- r- J0 V6 b" M3 ~
                        e.printStackTrace(System.err);
& H* N8 E. t4 J- P. P# C                        //System.out.println(e);. s- g' Q8 M. P& T) q& g( L
                        System.exit(1);( m$ ]# M. o: B8 t7 x
                }+ u( c; u+ g4 V- p0 ~% f8 J

% p/ [" Y/ `' ?' E$ L4 a/ n# C" c- \
        }
& j* C/ b' b9 D9 K8 A& k5 t4 `5 D9 V* c' ?) \% B2 X6 H
        private void swarmSetp() {. D3 t2 f  x# ^; n* P3 a
                list.addLast(new Agent(Id));6 }  Z2 `* {6 j2 u# S) g2 X# p. Q
                Id++;, S  J3 A" E4 M2 L$ Z
        }4 Y* @1 w1 S, X% _# ?$ i1 J: h

/ H6 H7 j4 j& K# q& e5 {) K        public Activity activateIn(Swarm context) {
! A/ i4 p( ?/ H                super.activateIn(context);
6 C% X$ q/ C; k: d1 k                schedule.activateIn(this);  F( ^& G: l6 e7 Z" k
                return getActivity();
( M5 t+ ?: X: S6 K        }
2 N7 A$ ~* E9 c& {: {1 D& z* v" L9 x" v7 s
        public static void main(String[] args) {0 ^$ h! R6 ]  H" M
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; d3 a) n. }5 J( S4 h4 a1 C% D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 `# {7 f  n6 I5 }& k
                swarms.buildObjects();: d( U6 J. W- N
                swarms.buildActions();7 h( Y4 Z; \8 g7 ]7 d7 [! k, v! m
                swarms.activateIn(null).run();
2 v' h* K  y0 Z3 z" G        }& e# g* p' b& z  A
  l; T/ G! h% C/ h
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-22 21:22 , Processed in 0.016253 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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