设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7901|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! R# G3 u, z( T
. B0 F5 l2 J4 o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 d; u" k- ]  i2 p) R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# i& K* Q% T: N9 S
swarm.SignatureNotFoundException; B' u6 D3 i: p+ X
        at swarm.Selector.<init>(Selector.java:76)0 c  ]  S/ ^8 ~/ ]$ v. @3 X
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 d2 W) v/ p& R  H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 h- X$ i7 h* u) r, X/ x9 B; W& T7 W- Y
' T  x/ }# ^* v! }7 |# N# W
import swarm.objectbase.SwarmImpl;
7 q2 k8 f/ z3 t( t( Oimport swarm.objectbase.Swarm;3 N, ]7 b* x& r5 k! u9 M1 R0 j
import swarm.activity.ScheduleImpl;
" m- x, }  }, X/ M6 cimport swarm.activity.Activity;* n+ @- h1 n' x8 i2 |& U8 q
import swarm.activity.ActionGroupImpl;
# F5 O) d' A0 ~2 G; C6 I4 E6 @) Fimport swarm.collections.ListImpl;- J" X& ~% K& y0 k! ], A$ g# Q! v: ^
import swarm.defobj.Zone; . J) F: G0 X1 \  t3 {6 K4 C4 R8 c
import swarm.Globals;
( O) S: m; \8 k# l% Pimport swarm.Selector;
0 e& P$ z+ L, J& ^* E6 vimport swarm.activity.ActionGroup;
  r7 o) L  ]4 t% g. lclass Agent {
5 j, s9 E2 ^6 w# B+ K: @1 E        char id;
5 L; M/ _! h% x! |* }
" v$ \) O0 X8 d$ N        Agent(char id) {# B' Y5 Q2 m( @$ M- z
                this.id = id;0 ^  p9 m+ I( b7 L, {" y- ^7 q
        }
# w( y: M# B% H( \! l; ~/ K' d) L- s: P2 m
        public void agentStep() {$ ]" m" j3 ]- ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ f: {/ m7 o/ t0 s& ~9 u" T        }$ F7 o7 M- v. s6 H! O: D
}' D/ `5 W  x6 H

# P3 B. h. h( E1 ^) y# Kpublic class ActionGroupDemo extends SwarmImpl {
: o- A  X! Z. m  K! S        ScheduleImpl schedule;
" T) p1 z) H" \/ P/ a        ActionGroupImpl actionGroup;8 |  |. B/ G5 S
        ListImpl list;$ v  b/ R/ s6 R0 s
        char Id = 'a';0 F& X7 B, ]0 `. E+ u

6 h5 g8 m# x0 Z        ActionGroupDemo(Zone aZone) {
7 P. u/ B8 p) v/ V! A3 `                super(aZone);5 _/ x3 x* g" p0 ^& K% |" F2 m9 o
                list = new ListImpl(aZone);
% Y- ^3 T' i( q; x                swarmSetp();" w" U& s9 j: p( M. N
                actionGroup = new ActionGroupImpl(aZone);
& a" ~2 t7 \4 }2 I( H4 Y/ t4 w* {                schedule = new ScheduleImpl(aZone);3 |) P2 m' A" H: ?4 \/ x
                try {8 a% o  p1 b, t! T7 t3 V3 q& s1 u
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ e5 w8 j5 @7 \. [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ }" R* [# ^+ f0 N/ n: p& D2 A
                        3 p* p- t# A7 R. [
                        actionGroup.createActionForEach$message(list, agentSel);) C# ]: w3 p- ~1 W
                        actionGroup.createActionTo$message(this, swarmSel);
- f, A' Q- `& x" ^. S                        schedule.at$createAction(0, actionGroup);
& C+ m1 l# p$ W& \% y3 v                        schedule.at$createAction(1, actionGroup);$ `# r9 ?3 Y& [4 x# D8 P2 B
                        schedule.at$createAction(2, actionGroup);" }0 @7 B8 G; B; c% q* E

) |+ T; X8 U* z$ {) f  L                } catch (Exception e) {7 t7 X' E$ E1 F3 o) t
                        e.printStackTrace(System.err);
* l" d$ m2 n5 E0 p7 F                        //System.out.println(e);
; y( D! T% Z4 |& K% f                        System.exit(1);
; u. w  W7 ^; m& a- Y% v7 p                }
1 z: z% R+ [7 Z! i+ [. @# f- O; a& A. o0 s; g" [
; [: n" o" k2 [: q# W. j+ P
        }% ?- S6 F! p( n

4 H& H6 i& i1 _6 f1 t3 ~        private void swarmSetp() {
, C7 C) d- n6 {( t2 ^5 L' k                list.addLast(new Agent(Id));1 q) ~+ \0 ^0 `1 N3 B- K# y
                Id++;& F) @$ A1 j, z! w2 k
        }
. z+ t6 C' l+ W  T& q& H8 y: q$ h! O6 ^
        public Activity activateIn(Swarm context) {
3 P( m  F2 ?2 V. ^3 R4 k                super.activateIn(context);& l9 J7 ~* q& W, U+ R! |
                schedule.activateIn(this);: E( p* V# B1 A4 c% Q  t
                return getActivity();+ b$ w; l. D  v  b1 Q& \) @
        }) [: Y" k2 \" W1 _: [

- o" q+ ^) X4 `; g7 r8 R        public static void main(String[] args) {
# H2 A" `1 Z; w0 u. S$ i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& i  ]2 A8 v( M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 m* d" E( u6 `* \                swarms.buildObjects();: N  t9 a( \- o& s
                swarms.buildActions();
- n* _, s  ]8 a1 Z1 L3 l  M: S% g                swarms.activateIn(null).run();, e" _  t, X1 M2 a8 h! c
        }* t/ M$ m/ s  X8 ^" L9 r$ S2 X

0 F- S' r$ u1 v7 {: d}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 12:18 , Processed in 0.016077 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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