设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14018|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; Q3 }* A) N+ r2 X0 a
4 u7 Q9 H0 o: j. l4 ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( B0 o) k! d% I+ K' r& @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 k& v2 z6 b# Q  @0 o
swarm.SignatureNotFoundException
6 D; v' b1 w& _4 K        at swarm.Selector.<init>(Selector.java:76)
; T1 D7 y% V0 t+ M8 T# l' m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 Q& h$ `1 a) S% ?7 H1 g        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( l( q% X* x' Z6 \$ {2 a; T5 T
, c: T# I/ `- h3 ?+ G) ]+ {( C) X1 I% R' K/ n, W4 l
import swarm.objectbase.SwarmImpl;
7 U* b7 L( X# J2 k$ Q1 T  `) O1 mimport swarm.objectbase.Swarm;
9 f8 D$ L. }. w9 h$ j+ ]import swarm.activity.ScheduleImpl;. d# ~& c8 t0 W4 H# P
import swarm.activity.Activity;( `" f: Q: |* J" v0 q! d  x$ o  x- F
import swarm.activity.ActionGroupImpl;
1 e/ N& U; I# [8 Y# Simport swarm.collections.ListImpl;$ n; F4 q9 t8 u3 Y7 f' Z
import swarm.defobj.Zone;
! K( q, d: B6 f+ jimport swarm.Globals;
8 ^- h  O6 i/ j# x  C/ Eimport swarm.Selector;
' \' p8 x# B0 t: s5 x  o( gimport swarm.activity.ActionGroup; 7 |- R6 ~& s: O+ c/ P
class Agent {
" a/ R: J% k: J+ B        char id;5 H) o* l$ |! {" Z! N' @
: M% L( c' l8 R+ F- m
        Agent(char id) {/ p8 {' a( H$ [* q# t* m
                this.id = id;% A2 Z, Z) I  Q' z% H
        }) R- ?, U# ~1 a8 c& l/ X2 y: N' t
2 h; c. n0 ]$ k; e# H: s8 O! F
        public void agentStep() {
5 c5 F! G8 [; n- x% _                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 ]! h$ g  D  t9 T1 P- T        }
4 [3 S3 k, p: F! C6 O  @}0 u1 R8 E) g5 U7 H

$ C- E# j% l" d, J# I2 _- y& fpublic class ActionGroupDemo extends SwarmImpl {& u+ @% {# C6 Y! w0 b0 U, y! I
        ScheduleImpl schedule;2 Z) |4 R7 k3 G: N! z9 B
        ActionGroupImpl actionGroup;( g! l( P1 t7 F: \2 r+ K; Q- B
        ListImpl list;) d" N9 q9 s' D- M, q
        char Id = 'a';
  p" {5 y( o6 I" T! j: @: c1 j$ x, N
5 c  ~" T6 a8 x& ~, d        ActionGroupDemo(Zone aZone) {  K7 r! H" v& G; C& j1 p5 Q+ [
                super(aZone);
8 \9 v, C) k( j& `- R. T                list = new ListImpl(aZone);$ a9 a. x3 u$ ^
                swarmSetp();( h) ]" Y1 ]. |  a6 T
                actionGroup = new ActionGroupImpl(aZone);
4 U, m3 z; w/ s9 X1 S$ W, j" f                schedule = new ScheduleImpl(aZone);
* J% a( Z/ j  U/ ^  e) M& h                try {
3 i; L& Q1 G+ G, ]                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) M( Q( H/ p6 b- \& N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 P  ?# W  W1 ?# ^! t. k3 K
                        
7 N! K1 C+ ^1 r8 B3 E                        actionGroup.createActionForEach$message(list, agentSel);
' a# P' n5 ?: \8 Q' a2 Q2 I                        actionGroup.createActionTo$message(this, swarmSel);
8 v, r+ o6 M. h* w& k2 k                        schedule.at$createAction(0, actionGroup);
0 Y7 j1 ?5 `; }0 C* h/ k7 O                        schedule.at$createAction(1, actionGroup);! \/ E: M2 ]) F6 a2 f) u% ~
                        schedule.at$createAction(2, actionGroup);% Y" i/ a% N/ o& }* F' J) r3 d/ B
. r: F# ~7 H5 W: z" B
                } catch (Exception e) {! c: r3 T# b% J4 m! }1 d/ \! @- f6 h/ A
                        e.printStackTrace(System.err);6 N# \0 G, ]- f
                        //System.out.println(e);8 v7 f' S# G6 l& Z( z# E
                        System.exit(1);7 R9 c2 ?$ R: E3 t' F
                }
3 I. A, j/ c4 n; ?! X3 b' N" M1 u4 O. k+ P
: `# F4 s+ e' ^. o7 F7 q
        }
6 N: O; b5 @1 I- L* l# h: v$ G) T' a- W
        private void swarmSetp() {0 [2 T: x$ b9 O2 `
                list.addLast(new Agent(Id));  s5 R& O: c# f+ {: n
                Id++;
$ ^2 B- ?; g& R' ?        }
7 ]& r! U& I0 e% L6 x7 \4 c
( w, E9 U2 h& P( F1 ]        public Activity activateIn(Swarm context) {
. S1 \) o0 Q) p8 {# Q4 h                super.activateIn(context);. N+ `9 Y4 Y1 Q
                schedule.activateIn(this);
# G0 }# E/ z; m) @# O2 x" ?( M                return getActivity();
: Q+ a9 E/ {2 d* q# R        }5 u. J( _5 R: O$ F) g4 ?/ E0 b5 R
+ a7 g( R' U$ @
        public static void main(String[] args) {* T2 C8 J) S1 H; T) J  t, P) h
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 {) ~' C3 X& w+ Q% |4 p
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 z: _% J% R- M/ I$ @- ~                swarms.buildObjects();
6 i9 N9 V/ ]3 O  @. A; y7 b                swarms.buildActions();1 K8 o6 P+ V+ x& p- o2 T5 J
                swarms.activateIn(null).run();- }8 l5 ], i6 x: M4 F
        }7 _7 F8 N' h% E) S) I3 r9 x& l
3 }- Q% i9 b0 \% }
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-26 01:42 , Processed in 0.015305 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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