设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4822|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % k) k1 ]& W" Y) H

% D. F3 Q' n/ F+ U9 \- V% l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# F' H  ^. B7 C. Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 B7 u$ u" D: ]0 Pswarm.SignatureNotFoundException- f8 |4 [9 x+ @
        at swarm.Selector.<init>(Selector.java:76)$ [( ~5 ]& h2 p, E1 [! x
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): z6 N  m' L- M" T; k/ [
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 w+ G8 C4 U4 ^
( r) x* G4 Q! R2 W9 s3 S

" G: R# G- t4 @6 fimport swarm.objectbase.SwarmImpl;' R: R/ R: c7 O  I9 H/ s
import swarm.objectbase.Swarm;
1 g3 U. K/ w# \* Dimport swarm.activity.ScheduleImpl;. ^7 F$ h# ]  _( F6 `) E0 t
import swarm.activity.Activity;0 W6 ]3 v0 H0 f3 f* ?0 x& d
import swarm.activity.ActionGroupImpl;
9 T6 I4 E1 p) P- ^1 u2 _+ I: Y: iimport swarm.collections.ListImpl;( o- ?$ s9 A+ C# g3 Z
import swarm.defobj.Zone;
5 `$ ~, X* I" _- K, e* ximport swarm.Globals;
( V% y; ~: q$ S, x2 |* pimport swarm.Selector;
/ x% W# ~. D9 q1 Limport swarm.activity.ActionGroup; ! _1 ^. `) Y; ?! G
class Agent {# m/ e9 u: D% @
        char id;( y: f' |' a7 T& H( H

$ z$ o" V1 `2 H$ F1 p        Agent(char id) {
5 o3 q# Z$ l; a1 d8 F" v                this.id = id;
- x- w# {2 }8 Z: `: u  z$ P( L        }
4 g& v: q3 M+ y& _" d9 }* r; |$ X3 P
$ Z3 A9 t% j  S- B        public void agentStep() {
- {8 @1 S6 B% W" o                System.out.println(id + ":" + Globals.env.getCurrentTime());6 E% o" s- @' D8 q6 p: t, o' H
        }
- D; h5 Y, E! ^# }7 z0 c. b}* i" F& ~$ K3 z

+ Y' G. P3 @( b  T# Tpublic class ActionGroupDemo extends SwarmImpl {" G" |0 I" q# ~8 Z* v6 y4 A
        ScheduleImpl schedule;6 F7 l, r! H: c8 I$ N& L
        ActionGroupImpl actionGroup;
; ^. U' c  s* c+ q  _* p* v2 R        ListImpl list;
+ @) B+ ^4 r9 |4 f) V! [        char Id = 'a';
+ R  }1 O' j( o
) L+ J4 o4 N; r/ A+ i/ v7 S6 k        ActionGroupDemo(Zone aZone) {% S, `( U) n3 J5 R' Q( T6 l6 S
                super(aZone);( R! F& A7 ?. j
                list = new ListImpl(aZone);! [3 I. [% Y0 `$ q# f: ^
                swarmSetp();
1 r0 b  u+ q0 x" P5 r  k1 x8 G                actionGroup = new ActionGroupImpl(aZone);9 ~. e( f4 Y$ z7 z
                schedule = new ScheduleImpl(aZone);3 e8 W( g# |; ?
                try {* }: r. j/ f3 M# h# w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 A$ ^  W: X! e                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ v8 f5 [! Q. c4 k/ l                        
' ~0 D$ z7 c& o6 k                        actionGroup.createActionForEach$message(list, agentSel);
2 F/ k4 ?: G# ~6 Z8 `8 j, q                        actionGroup.createActionTo$message(this, swarmSel);; y7 a8 i+ H/ [+ K7 Y3 _3 c
                        schedule.at$createAction(0, actionGroup);
6 r* E* Q6 c8 W, U* h! n                        schedule.at$createAction(1, actionGroup);
- k% Q8 w6 M: \) G4 d0 t                        schedule.at$createAction(2, actionGroup);
7 S4 s( \  H2 R5 x$ `- \
& k6 \( \$ u$ S# {& h/ g                } catch (Exception e) {- U) B' E4 R" T  |$ q! @) b
                        e.printStackTrace(System.err);! e6 e% P; k! u1 W. t
                        //System.out.println(e);. F1 @- A3 }* N( Q# e
                        System.exit(1);8 ]' \( p5 y# m6 D  t
                }
% i0 ^6 U6 z0 l' k5 q" f
" ^( Z7 r6 l" |4 ]2 B9 I( |8 r, N3 Z$ ^9 G
        }
) z( H4 X. W3 X+ N+ b0 O2 e' G0 \; ?2 I( }- A0 q2 Z& L
        private void swarmSetp() {
  s9 D; S7 H0 d3 T                list.addLast(new Agent(Id));0 O3 G+ q9 \; }. Q7 a$ g% q' `
                Id++;
; r* M/ S9 ?* ?# i# C# ?+ f5 f        }0 V3 Z! Z+ G$ D- ]  |$ a

6 s  A' Z/ r/ {        public Activity activateIn(Swarm context) {; s1 o& O. _6 n1 P  R
                super.activateIn(context);
2 b" m8 a0 V' ~# n. \8 [6 r                schedule.activateIn(this);
" i* C3 T, @$ ^$ E/ ]/ w8 o* E                return getActivity();
9 ~9 ~" y% l6 {5 L, g        }- a! Y! l  v' R/ ~

; @4 w' }3 \: {& G, D  L3 c) H        public static void main(String[] args) {+ S" r8 H4 p/ v7 A
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 r  J& U" S8 x9 V+ V% P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) W6 l+ u1 ]4 @$ R6 V! a
                swarms.buildObjects();
7 y5 y, }8 T$ u* S1 }5 n                swarms.buildActions();3 f" f) I) c9 }- U0 z% }. g
                swarms.activateIn(null).run();
4 q. Y+ a3 J! z! n5 \        }9 |& e: v* S- O$ p5 m
3 L4 r$ t4 c' J4 ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-13 08:07 , Processed in 0.021172 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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