设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8539|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   f$ w2 x1 b" i9 U, }3 b

  ]: g4 q7 F4 e6 S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ r6 t9 h/ n; q; @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ O) `- }0 d$ sswarm.SignatureNotFoundException4 S  D) _( o) ?  v" m: j0 B
        at swarm.Selector.<init>(Selector.java:76)
* p8 [! T* M; D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 G+ h; U' V, b( K( m0 o5 g        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 N2 o1 M  l6 T5 F2 Z% P' b2 b, Y
9 c8 P; E! b7 A4 ~
$ I2 t$ P" s" j& m$ ]: D
import swarm.objectbase.SwarmImpl;
+ N5 X- ]+ R, ~$ G) _import swarm.objectbase.Swarm;
' q- U: P% L" U  N! Mimport swarm.activity.ScheduleImpl;- p' H3 \0 t! q* l
import swarm.activity.Activity;4 W) N9 H7 ^0 q6 q$ s+ `
import swarm.activity.ActionGroupImpl;
) S' q* c6 |9 C" u( N( dimport swarm.collections.ListImpl;: M2 T6 _# [, a1 C$ h4 ^2 t5 n. s
import swarm.defobj.Zone;
& T- P' ~  r: h, l* timport swarm.Globals;$ H  T. h) n$ c, `! P, V
import swarm.Selector;
$ e6 G- M* m! v# w3 _/ Simport swarm.activity.ActionGroup; . i' h% d  P0 M( ]7 ]
class Agent {5 e$ j6 S& m; q7 R; U. ^& \: \
        char id;
0 |2 @; t$ l3 X, W3 D! a
2 ^+ j* m. N- W0 _  p; W        Agent(char id) {
7 c2 f; r! k' J                this.id = id;
- ]1 ?7 ]1 y- g' x$ h$ G        }
5 x" Y- H: W5 ]; W& X
5 d+ N, T- b+ @2 y7 f        public void agentStep() {
# o- N4 V3 C- m5 {5 N' _                System.out.println(id + ":" + Globals.env.getCurrentTime());8 b2 e1 ?# Z! Q6 U1 m# ]4 N
        }9 r- ^/ @+ S3 i
}
+ g3 t1 e2 d( w# w) \; K9 Q! c$ W* r8 V  Q: M5 m
public class ActionGroupDemo extends SwarmImpl {, l0 v) S& B; P
        ScheduleImpl schedule;8 T3 J& K* f+ c* H' q
        ActionGroupImpl actionGroup;5 H# v" p( X, L/ X
        ListImpl list;
- U7 S  j5 `/ R9 c/ r! ?! T        char Id = 'a';4 x5 \: e  y6 z  k
9 d, A. ^5 t5 ^7 {- o* X
        ActionGroupDemo(Zone aZone) {3 Q- c+ i5 d+ C7 D% m6 A& B+ _
                super(aZone);+ \' A9 h- Y; W
                list = new ListImpl(aZone);
3 G. d5 `% j5 K& x                swarmSetp();
# l: G* u0 a9 K0 Z                actionGroup = new ActionGroupImpl(aZone);7 S; c) u2 ?/ K! a. Z6 ]. `) Y
                schedule = new ScheduleImpl(aZone);* x" e0 B; f' |% D
                try {
! f& E% P4 I4 B, m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ Q9 X6 B8 e# t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* Q# O( }' o7 }3 _5 _! c" T& w# f                        + j& r7 G: h- G& }& O- P
                        actionGroup.createActionForEach$message(list, agentSel);
, _9 K0 h, M3 U5 R/ A                        actionGroup.createActionTo$message(this, swarmSel);3 h" v$ i" j3 K7 Z  O, k
                        schedule.at$createAction(0, actionGroup);
3 N2 o3 P7 a0 f                        schedule.at$createAction(1, actionGroup);
3 U0 ?- t9 ^8 K& T# e                        schedule.at$createAction(2, actionGroup);$ `, B. d8 B" m2 z) q* n3 d
8 J  w% A% \% R( K2 I' O
                } catch (Exception e) {
6 g  l8 I' X2 |# ^3 `1 H8 J. p  H                        e.printStackTrace(System.err);% ]1 [/ s4 U3 j$ Z0 _
                        //System.out.println(e);" \# `$ G8 Y$ l) X' h
                        System.exit(1);
0 G: p1 j7 G8 V3 w6 l' K- q                }
5 n% W$ r4 f2 F, L8 R9 w# O+ b1 H. y7 m" v; r; @
% g4 z3 O0 g! r
        }
8 ^" `, O  A/ W: o5 \2 Z6 @' f5 R0 m+ U
, S% @, q. }0 x0 E5 y        private void swarmSetp() {6 G5 K# r& s4 r1 a
                list.addLast(new Agent(Id));
# k& e5 K9 H( I- j: D( `( C6 E                Id++;
3 {* W+ H. D  x9 r9 b        }1 z' O. c9 M' x, Y  Z5 z

. U/ z' n' Q' X+ f& {7 h* @% i        public Activity activateIn(Swarm context) {3 S5 t# i& O- y. U8 C4 p  T7 B6 e2 D
                super.activateIn(context);8 d7 V2 F; Y: Q3 r# W
                schedule.activateIn(this);+ F* G* f2 I2 R# N* Y2 B
                return getActivity();
! {& p9 W4 {) c% l* m3 c# Z7 L        }
8 ~: g, V- L3 m* J8 C7 a" K4 A
; q) W" R. S( x; ]( y        public static void main(String[] args) {
) v+ e0 B/ U$ S2 i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 G5 C+ P/ G) s0 [/ l6 p! g% b; z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 [6 ^$ @5 q8 P: U; d) D3 S' c: u7 j
                swarms.buildObjects();! E6 ^. N- W, [
                swarms.buildActions();/ T& c  L/ T( r% u# G$ Z. ]! X; E
                swarms.activateIn(null).run();
* h) g" b+ M3 p        }0 U5 ]. a, [2 H9 I' [. W# c5 }
& w* ]+ O# z: s" D, x8 J$ `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-16 00:13 , Processed in 0.021621 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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