设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7280|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 O8 k9 F6 T0 l) R/ [# J/ S/ b! B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ y0 U) a* E6 q) O2 q+ C7 E* s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 W) [" ~( x/ H0 r! i# N$ q
swarm.SignatureNotFoundException  Q/ @* m2 z; O; t# {
        at swarm.Selector.<init>(Selector.java:76)0 E5 _# o4 A! I9 H: ^$ A6 O& \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ?- ]0 M2 s. ~9 r        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 _8 J6 q2 S) a8 p9 Z
' s$ ?5 a0 q) O  N- t3 W
; z8 K9 b8 f) l$ D" ~
import swarm.objectbase.SwarmImpl;
, n% z: j6 Q! G) rimport swarm.objectbase.Swarm;
5 R- Y# j0 U3 N2 C0 k8 k1 [! O  wimport swarm.activity.ScheduleImpl;
& s# i+ W9 _% {* Wimport swarm.activity.Activity;, s" S+ n5 e( p- W4 a
import swarm.activity.ActionGroupImpl;
5 B" ^$ h5 v/ [3 r9 ?7 rimport swarm.collections.ListImpl;6 E7 l* R) \1 |
import swarm.defobj.Zone; ; ]  @1 R/ F( `& d" O# X
import swarm.Globals;( D3 g8 G: V: a9 z% B
import swarm.Selector;* z% }; @* i0 |8 i' ?
import swarm.activity.ActionGroup; 3 ~, }- ^2 h# @+ b0 T' ]# P
class Agent {7 Y8 ?* N1 j9 u: R, R- T  y7 D0 ~
        char id;! D- C6 ]2 \; w* R5 p* [
$ y+ B7 _* g3 R1 a/ j: g6 k
        Agent(char id) {5 x) z2 R: C9 V7 A0 I# l& |! A
                this.id = id;- C' F* g% k) S( `# W+ h8 W
        }
; e7 c( B1 ?; P' o3 e: N7 n8 B1 p4 W5 [9 _
        public void agentStep() {) S  B3 W8 \. Q, i5 X
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, U# X4 A# c, P7 M5 |2 X; a* Z/ I        }8 B7 {7 I; [1 p: q/ l9 `
}6 s/ @' z# s& a% B2 B  n, k

- u. J2 U3 }3 ]) ?2 cpublic class ActionGroupDemo extends SwarmImpl {3 T& u) Q0 Y6 z, f) d
        ScheduleImpl schedule;
; R4 `7 F$ f& m6 s! B( U: [        ActionGroupImpl actionGroup;5 [; |4 s$ j3 r$ M* L# O+ k
        ListImpl list;
) F; N4 ^2 {  G6 ]; ~        char Id = 'a';4 d0 w/ i+ B  k. m

. Q: i7 v* |( \& y' P        ActionGroupDemo(Zone aZone) {
3 q4 l  c. ~6 a$ S, \                super(aZone);
. u( i9 d" o$ |/ v                list = new ListImpl(aZone);
; |4 {; v( j! `- [/ s$ E8 v                swarmSetp();
2 k; R" G& [% {% E% E3 A* ~, h                actionGroup = new ActionGroupImpl(aZone);
" y: d+ m/ Y# g3 ]& L  ~                schedule = new ScheduleImpl(aZone);
2 [/ z: P0 S. J* g1 U/ o                try {( Y( _* y- Y. Y$ i, i* {' b8 m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ @4 q( n% R0 f( {5 x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 }+ G) ~- _8 \/ u/ G
                        
. r  A6 t: z( `1 X7 G) w                        actionGroup.createActionForEach$message(list, agentSel);
. d+ ^6 T2 W/ v6 m1 T                        actionGroup.createActionTo$message(this, swarmSel);4 {) L; `( X* K$ ^7 \
                        schedule.at$createAction(0, actionGroup);6 ^7 L: h$ L0 m- }+ z' b% n+ V
                        schedule.at$createAction(1, actionGroup);- S/ |, E" _: q* W; J: h3 C
                        schedule.at$createAction(2, actionGroup);( m$ e' R7 p2 D
* n5 V. P$ F0 ]% o& f+ E3 N, D
                } catch (Exception e) {
# Q0 g) q& L  {$ |0 v+ S( W                        e.printStackTrace(System.err);
$ \% A* _6 A5 M, Z7 ]& H6 {                        //System.out.println(e);
) R6 [  M7 o; k% Y5 W                        System.exit(1);
4 T! N8 L: e+ a# c& l. B& ]                }
/ S1 o- m1 Z$ [9 u+ f: L) x& Y0 k2 }0 P* U
& y; l0 l' B, [' `) |
        }. R. a) }' ]2 P1 c$ W

3 Q! O# C" W2 u+ s8 i+ d# Y) e& T" ]        private void swarmSetp() {
& s2 T6 L. X$ [) V                list.addLast(new Agent(Id));$ O4 u( o1 i" p& w8 L: W
                Id++;$ I0 l+ {. o! z  j2 Z
        }
; w, D$ B# k  c6 u, H2 X/ x/ N! `' G6 G
        public Activity activateIn(Swarm context) {
4 h$ v: b# l0 k+ a8 E                super.activateIn(context);
  r# A8 z: P6 I9 }/ X  q5 A                schedule.activateIn(this);
1 b; ?7 Y7 k' T, K9 W                return getActivity();
* {0 B7 x; ]1 O        }; R5 P- q' y" F7 o
: H7 r! X! q; r  j
        public static void main(String[] args) {
. G0 S/ [1 K* Z8 P( p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# r0 ~8 t( S& B) Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 Q/ H, ^& {5 b- v4 Q
                swarms.buildObjects();
+ w5 }# e  B; y$ z$ h" a                swarms.buildActions();4 b* t, T3 [9 T6 g
                swarms.activateIn(null).run();$ V% ]( E7 c* A# R/ x1 i' s
        }
% U) y5 E/ G  b/ c$ G9 R- J7 ~& t9 {' C# |- v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-25 07:10 , Processed in 0.014502 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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