设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13006|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* s5 A5 r1 S/ w! n  @
9 G4 X" w7 w1 J6 }7 I. D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 [4 Q1 c. ~+ {7 W1 u5 l4 U8 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& \. |! E9 l6 `6 Fswarm.SignatureNotFoundException
3 R6 r6 |; ^* m5 C% P        at swarm.Selector.<init>(Selector.java:76)
' F6 L, O! A+ P  c, S( }% D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 \- R1 T4 K9 Q1 W, M        at ActionGroupDemo.main(ActionGroupDemo.java:67)' _; b- A/ e9 H" P

" v5 _3 z  a; F& J  k6 m2 v% n) K% [8 z+ k- u! `; t
import swarm.objectbase.SwarmImpl;
, Y- L+ k3 s; himport swarm.objectbase.Swarm;
. z* b: X' T1 p+ ^import swarm.activity.ScheduleImpl;" }3 d) Z$ Z% l# k
import swarm.activity.Activity;
1 P, H% a/ b4 A. S8 s/ F6 }import swarm.activity.ActionGroupImpl;. I! d$ X5 k/ l. w% G) q
import swarm.collections.ListImpl;
* U8 b( m, `: X7 S8 @# q' }import swarm.defobj.Zone; 8 e, x  m; W9 d7 J! V
import swarm.Globals;
7 r. {3 R% ~: g/ I  Yimport swarm.Selector;
+ N1 S) _  [/ o- Q9 I- o8 g* w8 iimport swarm.activity.ActionGroup; 2 Q9 }# C9 l2 l: l8 N& a6 ]
class Agent {
" T( X# z0 z; d  O  z9 V" K        char id;
( L% t8 E! N& I1 g5 n/ z1 ?" M7 b% Y8 |+ R& j
        Agent(char id) {
: H" m( T* G& a1 l                this.id = id;$ T: O7 K& \, ?3 q( j
        }! Y3 U# N) s* S2 n+ t

: ]2 O0 Q$ ?' I& Y; }        public void agentStep() {% ]; h# X* ^: U2 m; W8 Z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 ^) U# l2 W) g' \# `# E) v        }3 d: H- Z3 J2 B$ s/ w3 ~
}* b; b' H6 @5 E9 K4 T1 H

" g! ^7 f9 l8 p: S. Gpublic class ActionGroupDemo extends SwarmImpl {
0 G( U5 l; z; ]+ U        ScheduleImpl schedule;- L7 G" D! I+ z
        ActionGroupImpl actionGroup;. r; Q1 ^  g) P; c7 l" r
        ListImpl list;
) X: T- S5 H- K        char Id = 'a';
5 E& v- h9 o9 S* a, W( \2 T0 ?
. @# k4 G9 l/ v+ k        ActionGroupDemo(Zone aZone) {
+ R  J3 G) Z/ h3 w+ s                super(aZone);
* l- d9 u' z! Z. C9 O                list = new ListImpl(aZone);6 c9 b0 a* L7 h1 U4 a
                swarmSetp();
3 M+ N! h* E1 g, ~                actionGroup = new ActionGroupImpl(aZone);7 X7 G; n. o; `! O3 H
                schedule = new ScheduleImpl(aZone);
, Z! ?. i& `" N- D% e% u                try {. |9 S7 d. K7 x/ I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* u' [4 \& s& S3 }                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 s' _2 ~( _4 z( o: |8 e                        . [( B. ~/ T& x1 v2 n
                        actionGroup.createActionForEach$message(list, agentSel);
0 A$ B6 q5 C( ^# [  R                        actionGroup.createActionTo$message(this, swarmSel);
: x6 a2 m+ @3 H% Z3 {% a                        schedule.at$createAction(0, actionGroup);
4 o' U; A; n) C' H* t                        schedule.at$createAction(1, actionGroup);; u  w! Z( K3 F8 {; C
                        schedule.at$createAction(2, actionGroup);
! U0 m: s) h6 O8 ?! I) g* o' J9 W- s& D- \
                } catch (Exception e) {5 G5 m% H. g+ ?9 p) e8 T
                        e.printStackTrace(System.err);/ n9 Q. `8 D" X! Q" b( B
                        //System.out.println(e);& D  x: s3 k, E/ m8 {
                        System.exit(1);
- ^9 l# g% Y! [; l8 c                }
5 o: w5 d8 B4 j1 `( x- W. ], t% M$ ^" N8 p. l8 X' _( |# Z! _5 }

! a8 r" a# [4 {) E- n        }
# v# v1 v/ ^$ W6 _# B0 Z4 o% d  g: d* c
        private void swarmSetp() {
* `8 Y4 \* {6 J                list.addLast(new Agent(Id));
/ V& U& F$ R. \$ O# x! [                Id++;
7 N1 @7 r  |8 j$ s2 W        }" I7 Q7 t% b7 l* e6 e
  D7 f( x/ s0 K! f
        public Activity activateIn(Swarm context) {! p" a! a- r7 g$ Q
                super.activateIn(context);3 ~/ x0 c. r& U0 I6 h; {
                schedule.activateIn(this);
1 `$ |! x* ^1 \$ \/ U  \; V$ Q                return getActivity();1 r* ~5 N' b; l* j# L% J" K
        }8 ?) t( w4 ]( l, D# P' i. v8 O
# ?  u2 Q! ]! M
        public static void main(String[] args) {5 Y5 H+ J8 U9 }
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 `  ~5 o0 L# s4 L
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 ^+ |1 b% v# v! O1 b$ z
                swarms.buildObjects();
/ m2 y% U4 r! v2 g( B' N- F, _. O                swarms.buildActions();$ E3 s9 h, w. n9 K9 }; k4 [
                swarms.activateIn(null).run();
/ r  R$ e6 K$ I- J3 V, q$ p        }- d8 H8 S- R2 h
$ Z- M6 h! h/ e* F/ s6 A0 h
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-25 18:17 , Processed in 0.018904 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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