设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10190|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& J" k2 {8 l5 p% |- R4 `9 V3 h& K! {, S3 U. T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 Y, e7 Y8 P) r( R% G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: D1 y8 R) l# n/ j  c
swarm.SignatureNotFoundException
2 B# p1 {0 t! i' P$ v2 o$ q        at swarm.Selector.<init>(Selector.java:76)2 s6 d" f5 u3 c$ M6 v' F& L. n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% c$ |+ v+ P7 Q* l* ~        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. g+ E# S. a0 p' b+ ~% k. D" b+ j: b+ z* z
0 c) T8 t& V1 I: |
import swarm.objectbase.SwarmImpl;/ v7 l) d2 {# V, b4 ]4 A8 B
import swarm.objectbase.Swarm;
$ K' H# s, `# v+ Q6 M3 Iimport swarm.activity.ScheduleImpl;% e" S  k( `+ \' m5 J, Q' V2 F
import swarm.activity.Activity;0 `" T! l! H% Y# k8 z* y+ |
import swarm.activity.ActionGroupImpl;/ D8 }3 C5 \9 X  R
import swarm.collections.ListImpl;
. `. ^+ H/ t# i) E: Z6 yimport swarm.defobj.Zone;
6 z3 u& O& \2 o4 [0 Z# x+ N3 q' ?import swarm.Globals;
. v7 b. _. U% \2 _/ A; K! R5 Himport swarm.Selector;. \# l1 u/ D( p" t4 N" X# C. t
import swarm.activity.ActionGroup;
6 T' J5 M! e# n2 P1 @. u3 L3 `class Agent {: L  @4 E" _+ Q0 o! R; Q% D! w
        char id;; z, @8 G) {( z
4 a$ q! z6 ^) P& |6 y
        Agent(char id) {
4 m! n7 P0 ~1 {( O8 z                this.id = id;1 e: q8 {: W0 H7 f" Y( A7 Z) G
        }- g) O- P5 e/ L$ E+ G9 f

: ], _8 e& H/ `/ S* j0 {, \; J8 Z4 e8 o        public void agentStep() {
3 Y/ Z; P; J( u  a; H                System.out.println(id + ":" + Globals.env.getCurrentTime());) |4 e* i4 q# y) E
        }
" H2 N' U+ t7 T$ {0 I) O  k! Z}2 v9 t- f, A; \- Q$ C' S  `# _
% [7 R; S. ~, S" T
public class ActionGroupDemo extends SwarmImpl {: f! ^6 g. ~: L9 J. \
        ScheduleImpl schedule;7 z( Q$ @! F& u" u! v- d" _
        ActionGroupImpl actionGroup;. Z0 I: t& |7 z7 g
        ListImpl list;% f& y! G: J, e) G
        char Id = 'a';" h- h1 U0 v& w+ D* \
# J0 L- V7 H+ \: ?6 I0 y4 ~
        ActionGroupDemo(Zone aZone) {3 Q+ v9 P5 q! o' F5 y, |* A9 H: g
                super(aZone);
+ L7 }0 W: P- V3 y% Q- n' O8 T                list = new ListImpl(aZone);( W- l& Z" K2 J0 L) l. E, G/ A
                swarmSetp();" G) B, {& ]& V7 Y/ @: ]
                actionGroup = new ActionGroupImpl(aZone);
/ w$ E9 [" H) C# q, C; q% B6 Y                schedule = new ScheduleImpl(aZone);" Q- O& D$ V6 Q- X
                try {& V$ x3 c  ~7 _- K! _4 r4 t
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 k; [1 t! \3 N" t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ Z0 c( _8 F, p$ Q1 K5 b" b6 L. e                        / m2 K# J1 t* U) C, {7 o) J
                        actionGroup.createActionForEach$message(list, agentSel);
6 ?- ^% Y% l2 ?/ J  z3 j8 o/ v                        actionGroup.createActionTo$message(this, swarmSel);+ }/ R) l" V  c0 `4 E+ W
                        schedule.at$createAction(0, actionGroup);! E% T. `+ Z: ?
                        schedule.at$createAction(1, actionGroup);
% p3 g+ @/ h8 w0 x& |6 E, u/ m                        schedule.at$createAction(2, actionGroup);
6 \* A8 g' I6 N
  x3 A( N: K8 D+ o9 X  ~                } catch (Exception e) {
2 V' B. N* D' F! f                        e.printStackTrace(System.err);0 J8 M, C, R- j' N( O7 j* y# ?
                        //System.out.println(e);. c/ n( `' Z5 T6 ~/ `7 w% a
                        System.exit(1);
# N: w9 R0 O8 E) Q9 w! L                }
+ V7 R6 W- m0 v* d$ M
/ W' H9 @% y% G9 c$ ?% g9 [
  {: T$ P5 L) m. l+ U2 f        }
/ J, z0 X( [% i5 I" i: M- T# F8 f1 O- ?4 O1 c8 C2 O
        private void swarmSetp() {
( v$ }3 x% C: p' ^1 V" N' V) {* ?& ^                list.addLast(new Agent(Id));# x( P2 J  K  T9 L2 O. r) |
                Id++;
3 V4 Y9 _; D/ G% O/ J: o, Y        }( U5 Q3 A* |$ D+ M$ B6 G6 d* }

0 x! R4 f9 w4 {5 v2 R! ~# g+ L        public Activity activateIn(Swarm context) {2 n3 `/ p9 v, A4 p
                super.activateIn(context);0 {4 ?$ {5 ]6 ]7 A1 I4 W
                schedule.activateIn(this);
8 F7 @6 h; i; C. {                return getActivity();
' P3 y$ C4 a8 L, Y% \; q6 L        }
2 h, l! M, j. F& t& J* ~8 I1 o) i4 c+ z
        public static void main(String[] args) {
8 s" c- J8 a. P& L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 C- c, {+ l1 i* k# e
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 Z0 g2 D7 n# ?# o                swarms.buildObjects();
. r& f8 K; X# {( g& L                swarms.buildActions();
9 _* o& T7 _0 J/ h! l1 ]( [                swarms.activateIn(null).run();9 a: G- C8 Z) e- C4 M
        }* R& q/ |& m; e

/ i2 C' F! Z- v& Y' @& |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-6 18:24 , Processed in 0.013622 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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