设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11016|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* M" S1 S! w# W7 M% A, O# a( x0 l# t* k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! H. p6 a: C3 b* C! L- Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! `0 R: x! g% k4 K( ?0 ?9 hswarm.SignatureNotFoundException  P) ~# t1 B0 k$ |. {& D
        at swarm.Selector.<init>(Selector.java:76)
- g: ]% }* `  u! N' r3 X( N8 f' R        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 P# D0 Q& D. X$ B  g        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 b: n- R, u& Q9 v: d: V
. \0 g2 B$ e1 I; F) z/ S
2 i- x, X2 `8 E4 T6 l
import swarm.objectbase.SwarmImpl;# o: l" [* x, b
import swarm.objectbase.Swarm;, i. L+ R" x; x, M: v' H' ~
import swarm.activity.ScheduleImpl;
; R8 C! A- n- T; u) K* ^import swarm.activity.Activity;
$ d2 z7 W! n1 |5 kimport swarm.activity.ActionGroupImpl;
  ~- P2 Y4 ~& j7 U; J: b4 H$ {import swarm.collections.ListImpl;
! |% P$ \1 R! f, vimport swarm.defobj.Zone;
. m+ o7 A8 q& N: N0 f- _0 y" rimport swarm.Globals;7 q7 a! T, h/ n* @
import swarm.Selector;1 O5 h* Q3 @) [
import swarm.activity.ActionGroup;
! b' c- Y" Q  Y, k. i4 t9 kclass Agent {- g  G) R7 P6 n2 |% J
        char id;
2 k$ v/ b. ~9 M4 g+ Z! z( ?( J% H0 C( X3 p" g! S6 j
        Agent(char id) {
! W$ u+ k8 K# }! a0 Q                this.id = id;
9 }( L- {( d+ y2 D- N8 Z& m        }2 J( W( l. x+ h: a" T
1 G" D/ S& o# N' N1 u6 {# [
        public void agentStep() {9 K# G  T% b+ H4 y9 W7 V) u2 Y3 U
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ ?) e  p( e% f, u: O  P
        }
% ]8 C, g! Z( ~& L  C5 _}
& D/ `0 r8 \7 G
% u4 i4 I; A: J& r( Lpublic class ActionGroupDemo extends SwarmImpl {' v$ ]# t; W/ \! a
        ScheduleImpl schedule;: R. f( ~9 ^$ B3 d! [
        ActionGroupImpl actionGroup;
5 m7 y8 A. q7 J        ListImpl list;
3 y% p$ ]: [9 Z/ |        char Id = 'a';7 e5 t! P' j) y" F

& ~' ^5 H- b$ N5 |2 a4 V        ActionGroupDemo(Zone aZone) {( l; e5 \& O, o! G2 T8 t
                super(aZone);; }1 l6 c3 ?! \2 D. u
                list = new ListImpl(aZone);3 x; r$ n- W/ }
                swarmSetp();
+ O. S8 a2 R. r* `' l                actionGroup = new ActionGroupImpl(aZone);
; g- Y( v! T8 d                schedule = new ScheduleImpl(aZone);2 z. o7 j5 a3 G/ T$ o
                try {
- _$ A( Y, v* _# f- b- L                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; K- L8 l( e( P9 Z9 Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. E' `2 P/ _: s8 l                        2 ~& ?  \; W; |. _8 _
                        actionGroup.createActionForEach$message(list, agentSel);
. p! a4 C7 D, x; `  |                        actionGroup.createActionTo$message(this, swarmSel);& s' J5 Z2 ?( X' B+ M
                        schedule.at$createAction(0, actionGroup);
* ~4 v: g. v' e* H# d. v                        schedule.at$createAction(1, actionGroup);8 s8 v9 F  l9 l2 k) U0 A4 |
                        schedule.at$createAction(2, actionGroup);6 Z( X' J/ R3 ?" ]

4 s: ?# C4 }2 N) O" k                } catch (Exception e) {' p# a' k, v8 d
                        e.printStackTrace(System.err);
3 I2 p) \' _' _" z/ S$ f; m3 Y                        //System.out.println(e);# G, O/ Z' r- ?: @
                        System.exit(1);
. T9 |8 y$ Z; ^5 E- _: V                }& N. s, q( O+ c! n0 q) j" o6 s
' }3 h% T8 v5 ^" `

9 y$ h7 D" [2 t0 c, S$ W4 `        }8 h5 e) z9 g- O: V% V7 f, N

! X( S! R% g! T+ A5 ~        private void swarmSetp() {
' s- T3 b9 t- V5 \8 \; V: M                list.addLast(new Agent(Id));
6 R* a4 d& v" j                Id++;
, G* z3 r8 Y) O* I        }9 U0 l1 W/ t# ^+ f( w6 ]
' k5 l9 X! z' O% T% m, @
        public Activity activateIn(Swarm context) {( f0 W- Q+ X; {/ C- Q* m! P
                super.activateIn(context);
( V9 T. ?1 a/ z9 f                schedule.activateIn(this);' C+ n% d& _! J- ?; @2 Z/ ^
                return getActivity();
6 }3 ]2 d, C9 h, a0 A        }  t1 k; U. a, [7 U

8 p( C: [8 O. |  N        public static void main(String[] args) {: r/ L+ c: @( \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% H2 X# r0 U) B# ^# {3 [
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 a( \( ^0 j7 d0 R3 m* Q                swarms.buildObjects();
% r* O  O! w2 D" ?+ ]' T" W& |# C                swarms.buildActions();% l$ F  j' o1 S
                swarms.activateIn(null).run();2 f, U+ C0 ?0 M. \2 T
        }( ~4 |6 Q! i! M9 O4 h1 @* |

) ]6 t6 ~  U& s) J5 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 11:39 , Processed in 0.014638 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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