设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11614|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 x% D: j) U6 o4 q

6 \6 U# I, N0 H' ^, w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; d3 ?& r, ~* H) Q, j$ P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 _! B" p" d: }  J  |& \/ B
swarm.SignatureNotFoundException7 Q# H0 d8 O1 {5 |2 U
        at swarm.Selector.<init>(Selector.java:76)
7 t) ]# l6 h5 a! L( s' i' F# G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# \; |4 J/ M6 j9 _' b        at ActionGroupDemo.main(ActionGroupDemo.java:67). R' S) t" r: ?. g  ?  `% ]: o

9 W  L3 W8 h) m
1 ]$ V: {/ g  J9 \& `import swarm.objectbase.SwarmImpl;
* X" E3 E& H; l9 oimport swarm.objectbase.Swarm;8 Z, u7 k$ F- w
import swarm.activity.ScheduleImpl;7 t, Y; K. @, K1 [6 v8 W( g
import swarm.activity.Activity;
- u1 C- H( p3 ]2 D3 uimport swarm.activity.ActionGroupImpl;6 r2 R& S5 X, V7 w
import swarm.collections.ListImpl;4 c- j1 w( X3 a; @, M6 `4 p
import swarm.defobj.Zone; 9 m, K2 w8 Z; ]/ V) Q6 D( W
import swarm.Globals;
6 R; q$ @7 |: a8 I+ x# Rimport swarm.Selector;3 ~4 S1 p6 i# l! e
import swarm.activity.ActionGroup;
$ X# T% h' |2 s& h7 G1 }; }class Agent {: p7 H- C4 y/ v& l6 Y5 K; a
        char id;
/ \! b+ z2 @: l: m
" v% P6 S; L) p- C7 n5 l6 K        Agent(char id) {, L' i- E3 A* q
                this.id = id;
3 u9 \  U4 l2 ^3 ]6 b5 b        }( k1 ~5 R. o' S( J2 W# G
" ~6 s) }6 W/ ~# I+ @% W+ e9 e( _2 F
        public void agentStep() {
8 ^6 z. p0 j4 `  \) r                System.out.println(id + ":" + Globals.env.getCurrentTime());
: r( L# P- @1 N        }* p: y& }3 `# b' L3 H- s
}
" |$ p; k1 m/ O: o
3 H- g( Z: j1 C" bpublic class ActionGroupDemo extends SwarmImpl {
; a. E+ S* W) Z+ \) T8 G' z        ScheduleImpl schedule;
: M6 Z8 u% t- d4 c/ d# |6 R        ActionGroupImpl actionGroup;
( E, _  E% @" _/ K( a  t        ListImpl list;
0 s- @$ f6 ]( J* F4 R        char Id = 'a';3 V- S# P2 o* I; L
' I1 m$ B# R5 h, I" T- O/ m
        ActionGroupDemo(Zone aZone) {
/ X+ l  [3 P3 N8 A2 g3 {& F                super(aZone);
! m0 D, W" r$ K. _+ B/ x" a3 B' K                list = new ListImpl(aZone);
2 F3 @4 M+ u7 J, F4 q                swarmSetp();9 h2 \: k: H( F/ O
                actionGroup = new ActionGroupImpl(aZone);
; S$ [4 U* H6 p  G# G8 G- ?                schedule = new ScheduleImpl(aZone);: |9 w4 c9 J! @& S4 y* g1 W7 C, ^9 K
                try {
, r" H( x, D. x4 J& R6 x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: ?/ y) w* V* a$ P. _3 F4 G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 W; E9 f) _5 [9 F% w5 t, J) |                        
* w* w2 e7 o2 C# R1 o* {. G* @) @                        actionGroup.createActionForEach$message(list, agentSel);( [6 \5 M+ d$ v: s  W/ z) A
                        actionGroup.createActionTo$message(this, swarmSel);1 O% b% c- }: |3 |, @$ v
                        schedule.at$createAction(0, actionGroup);
: ~7 U/ T" D! o5 C3 E3 |  F' l                        schedule.at$createAction(1, actionGroup);! l% `0 O$ @/ i: \  L9 o- x9 [
                        schedule.at$createAction(2, actionGroup);
) W1 U# g/ v) O: s0 n! ]( ^" E( _$ H0 ~; E" ]
                } catch (Exception e) {- V8 J; u) {* ?( H
                        e.printStackTrace(System.err);
' [. l5 w( k6 F                        //System.out.println(e);
8 P5 m+ L# ?+ d                        System.exit(1);( X! b" @  ~! v) u( Q, V% x
                }) B8 O9 X% c3 u7 S+ [& S7 }" m% Q
5 p" S7 Y' H# R) @
3 B$ ]# g) _0 Z% S) @; q
        }
. k* k6 ?0 V% j0 m9 R0 H, @% ^$ i: I  O  S7 w' O6 \
        private void swarmSetp() {' @9 ~" Y# ~5 Y
                list.addLast(new Agent(Id));
( @0 F9 C* Z$ L% O                Id++;
, Y' ^1 P4 ^2 G# t" e) \" d! C        }
( c7 B; B- o4 M# f. U3 p) K, Y4 [0 ~0 q4 x2 A' B& i7 n* s
        public Activity activateIn(Swarm context) {0 D! N0 |! \. M' b( y" c; ]# _
                super.activateIn(context);
! ?$ n! y5 S& u6 E                schedule.activateIn(this);
. F7 i$ t3 t# {8 \7 g  K- c                return getActivity();
+ g# f4 d. y8 E. L9 _' k! R2 K9 y8 m        }
* L2 z  O0 j# j# L' o; Y) ]
! W. f" R2 w8 h! R, U1 W        public static void main(String[] args) {
! ~4 ^- [8 @( q5 z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" G1 p8 h0 ~! U8 J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) p% v& ~6 o+ _                swarms.buildObjects();) t7 ^7 O" a) [+ g* O' A( L9 W
                swarms.buildActions();
5 _% k& p* k0 y7 x  a                swarms.activateIn(null).run();
4 t, n) X4 m: H7 W1 S+ d5 z        }
) X; f, y1 j2 u' j
9 ?4 t, d, c  h" t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 06:54 , Processed in 0.015123 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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