设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8190|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 t4 }8 i  e) Z5 K# u* W) I  u! n, |+ x5 N4 o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 c( m8 z2 W( J! a0 D- h3 x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 A5 S" }. V. A! d+ T+ s
swarm.SignatureNotFoundException
0 E: i' `+ }4 Z% M- g& O% [' e& ^        at swarm.Selector.<init>(Selector.java:76)  \# ?: l+ Q& n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 X3 G1 A6 ^0 {! h* \# P6 x% P        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 C8 O) b8 h! m6 b& ?5 [: S9 ~: C5 m

. o' U1 U5 H& o$ R3 A, R0 B
! v0 L! z* ]  z  Mimport swarm.objectbase.SwarmImpl;
* f2 J7 z$ |  l0 b( I4 G; R+ }4 Gimport swarm.objectbase.Swarm;
3 {# H1 r! |- Z; [- z3 R+ Himport swarm.activity.ScheduleImpl;
9 ^; s6 j3 ]' vimport swarm.activity.Activity;
7 W) {  M3 h% m' E/ D( R7 X3 v7 h% iimport swarm.activity.ActionGroupImpl;8 u4 g/ r1 G0 c" i* ^$ e" p. g0 a
import swarm.collections.ListImpl;; z$ h2 D# F* `% X, B
import swarm.defobj.Zone;
6 D/ I% f" n$ d- o( ?. \  @6 Z5 z* o- {import swarm.Globals;6 C0 K& c/ V2 e2 d. W
import swarm.Selector;$ x$ w& Y& B+ ?0 f6 V
import swarm.activity.ActionGroup;
9 a" J5 f9 D" Rclass Agent {; E- B8 h" F6 b, A. L+ ?
        char id;
* ~4 `4 A2 p+ U$ I( x- \( W! O# v
7 X$ E/ X1 g: Y( I' d* V% O        Agent(char id) {4 `/ p* ^+ G& z5 E& y, H! r
                this.id = id;# ]$ z2 M4 y) \: v$ x4 r7 \
        }
; x: ]+ V9 B2 A0 X3 N  j/ k4 O+ X4 J) ~2 V4 N' ~6 E$ e  S
        public void agentStep() {/ u6 `( H8 w7 _; [: k. H
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 ]* D- P  [! w! U" P4 Z
        }- ~. x' Y$ B7 @1 a: [. c
}- b3 a( w9 B2 J  p* g* N% C1 w2 Q
, c4 f6 E. J- ?0 p0 y" I
public class ActionGroupDemo extends SwarmImpl {. ]) L6 `% k  p- z# ]1 N! r
        ScheduleImpl schedule;* w$ b& T/ C5 }
        ActionGroupImpl actionGroup;; B1 ?" g$ t" i. v+ e! @
        ListImpl list;
* k2 N5 H& l' j% u) }9 w) y$ x6 Y        char Id = 'a';
9 Y) I% V3 f" ]9 N  I4 B, N" H: A8 @7 ^* v- e
        ActionGroupDemo(Zone aZone) {
0 F, F- h' ~! @- A5 S& a% [                super(aZone);4 k8 ]: l( o) i5 y# g4 q" ]6 h8 l/ _
                list = new ListImpl(aZone);& ]! T% g3 o8 c$ I) d
                swarmSetp();2 m2 }2 C" D& U! I+ w
                actionGroup = new ActionGroupImpl(aZone);: ^# P: u& e, g3 {) t# q) v
                schedule = new ScheduleImpl(aZone);. E+ B/ K3 D- ]! x3 V1 Q/ }
                try {
; ?  H3 u$ w. B% ], Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ Z$ W% |: A& {" _1 B$ \- Z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( x7 r) I" I4 N6 S6 V                        , L/ A. \" `" T' T1 q2 A/ I9 k
                        actionGroup.createActionForEach$message(list, agentSel);
- ~! j* x% z$ D! p4 T2 m                        actionGroup.createActionTo$message(this, swarmSel);
3 F/ z8 A& w( o8 ]) O) E                        schedule.at$createAction(0, actionGroup);( C  r6 I0 D( ^# D- V2 z' E
                        schedule.at$createAction(1, actionGroup);
% L* O$ I; Y/ \                        schedule.at$createAction(2, actionGroup);9 P1 o/ g" F( s/ _6 D) ?% a

! i6 G  E9 S: D, n                } catch (Exception e) {
, ^5 o  g+ i6 E( x. V                        e.printStackTrace(System.err);0 n1 p8 t7 k' A7 ]
                        //System.out.println(e);* X! I! j# P% p0 f# I
                        System.exit(1);2 o2 E- W+ _$ \
                }
% D# g1 u/ ~4 X* O
' P# y) A2 K6 B- z! [! H' }
' A) I& Y$ m/ J        }+ \: M- J* ]9 P2 Q% a: @
4 R1 r7 ?( f9 V  _( I: H; F
        private void swarmSetp() {
+ z9 B' @, Z) ?3 c  C2 @                list.addLast(new Agent(Id));
1 O' S7 a7 O% I( g2 Q" N6 g2 D                Id++;1 m, Y* h( |5 B
        }
- [' X9 B7 p. _. \" u
" ~0 k( Q' ]& a: M1 E' @        public Activity activateIn(Swarm context) {3 \4 Y! D8 L4 q4 R" V
                super.activateIn(context);
+ ~% }' I0 V: e4 \  A$ N) u  q# w. ]                schedule.activateIn(this);
5 t4 f: {+ ^, p8 n! [                return getActivity();
" ~7 y3 s0 G5 \5 D+ w        }4 o' s* |! u# \

: D$ h) E! E: `        public static void main(String[] args) {: Q8 i- u* |0 p' B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# n1 e0 F& u; w0 s# W, B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 z1 @9 w& F6 Z: C/ e                swarms.buildObjects();
$ v& H4 t, S3 l7 l" u7 _                swarms.buildActions();
1 c5 J6 `0 ^' Z5 l7 `" b' J* B                swarms.activateIn(null).run();. b' L3 Z4 ^  c- o' T
        }
# ~) v' v2 z2 ^' B( K& J6 _
( v0 y( N, V# L0 Z' U8 X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-2 13:55 , Processed in 0.018556 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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