设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10570|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 l5 K: ^1 M0 g
8 Y3 J0 N+ o, i% B4 ^, T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, Q+ T' E3 k5 }" W! u1 p" ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 J5 I/ u( `: k$ D  g/ D
swarm.SignatureNotFoundException$ k/ L+ i% I# b. A
        at swarm.Selector.<init>(Selector.java:76)
0 |! {& W1 ^! j) n. B- [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  r# F2 {5 C* V5 r        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 `* b# O+ w7 C6 q9 E0 }. Y
3 Y/ d9 x% s. _
1 o/ M$ B4 _" e( r$ M9 _import swarm.objectbase.SwarmImpl;
! @7 ~+ B, V5 v! u" K1 l: iimport swarm.objectbase.Swarm;
, [3 Y, h% t3 l$ r% d+ f. _- |( j4 K0 zimport swarm.activity.ScheduleImpl;5 B* s4 W8 o3 n* F+ x) Q
import swarm.activity.Activity;
4 k) ^& }; {9 N- jimport swarm.activity.ActionGroupImpl;
3 O+ P  u+ t- Vimport swarm.collections.ListImpl;
( d  r! J! L6 g& Y- m" Mimport swarm.defobj.Zone; % Z9 w' Q, l, t% I& d( y
import swarm.Globals;
, m4 l0 R* N4 A1 R9 E$ r, Wimport swarm.Selector;" k, v! m+ H! g' k9 w# g2 ?3 O
import swarm.activity.ActionGroup;
8 n+ {/ _9 g1 d: \. |$ b4 L7 U% nclass Agent {; F- n: s+ e8 t' U3 x
        char id;% J8 A! ?8 L: F( j

( M, j6 z1 Y+ B2 ~4 P" p' R6 ~        Agent(char id) {
) W( ?4 A3 C8 q  B) U: N8 C1 y$ c                this.id = id;
2 O1 `/ b9 e4 B! Z        }
$ D5 m4 m3 k# R% X$ b; e4 `
) D; A0 C1 I9 X: Y; G! s: `        public void agentStep() {6 H$ ?7 A$ l! B9 o% b
                System.out.println(id + ":" + Globals.env.getCurrentTime());" b* W: Y6 O7 u0 X
        }8 g9 G3 c- q& H: @
}
& _7 C+ b' N. s# a) M" [6 U* @& y% U4 v
6 g, a8 g' U) y- I" O. hpublic class ActionGroupDemo extends SwarmImpl {% o! Q4 N1 v  `. d
        ScheduleImpl schedule;1 u% o2 ]' J4 Q0 C+ ^
        ActionGroupImpl actionGroup;
# _: X  H: \4 a/ b5 w/ P        ListImpl list;% j+ y9 f% R" B
        char Id = 'a';8 S. T" |4 k3 i, p. d8 P

1 E* K, h8 v  T, E        ActionGroupDemo(Zone aZone) {
* Q. V' G, q# |! X. Y7 R                super(aZone);
) a) }  S  a4 _( A1 t                list = new ListImpl(aZone);5 q! ?" G8 L! l- u
                swarmSetp();
# t( ?  j5 F# m$ w8 f                actionGroup = new ActionGroupImpl(aZone);
; p0 |; P. _' i                schedule = new ScheduleImpl(aZone);
* N( j& _% ^( H# Q( `$ |" D  u                try {
0 w: a8 i, L' T, P) P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& V# \( L" g+ P- B, T) i* {+ }, k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" K2 w3 {5 P# L: k0 X
                        $ ?* E5 ?+ V; S6 G
                        actionGroup.createActionForEach$message(list, agentSel);: k; ]% Z. r5 e3 U" C, b8 v: g1 k$ O7 b
                        actionGroup.createActionTo$message(this, swarmSel);: b5 o" i: z; i: Z! e/ }7 S, G
                        schedule.at$createAction(0, actionGroup);! \; \6 m$ H. ?- J) ~5 f) m" R
                        schedule.at$createAction(1, actionGroup);& d5 l- D2 K5 y( z6 W" {  s
                        schedule.at$createAction(2, actionGroup);
* E% O& e$ g5 X0 ~( `5 O( I& V8 c' C  c# H: ~. q- c2 Q8 t
                } catch (Exception e) {% ^/ j% |% P: \
                        e.printStackTrace(System.err);/ e; A' g- u4 T' ]0 D* ^* Z
                        //System.out.println(e);* h' H8 I/ e* ^/ i9 p' p* v
                        System.exit(1);; J, g; Z6 [- }
                }) @! j* h0 p. v* Y4 F

. y3 Y: y/ ?9 z; ~4 \( n6 G: t. e# M4 v7 V
        }
% [. H7 U; H5 H8 Q* O! B# h
( v' H4 C* U. r7 s- L        private void swarmSetp() {, i5 `, }7 O6 Q$ [4 L& Z: f/ G
                list.addLast(new Agent(Id));: ?* i/ \1 D6 T* I2 S, h. c
                Id++;4 ?- s8 i* G- O4 Q
        }4 o- |) \6 l3 @; w! m7 k9 \' O- n
5 D+ _% _1 ]3 l0 i
        public Activity activateIn(Swarm context) {
, c. x& e! q- d1 Y" ?& a7 b                super.activateIn(context);# C7 d% m/ C: A
                schedule.activateIn(this);2 b0 A9 D6 V2 z; [4 b
                return getActivity();
$ P/ L' r! X4 l& r4 M: E% p" D, Y        }4 Q! `( r; T  q' i1 I
! b5 v3 I) h' j
        public static void main(String[] args) {7 a8 L9 C! u# P$ t  j9 z/ H0 H2 U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 s4 b( K# q3 q8 ^1 ~" g" d/ o0 w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! |8 T7 R/ o1 Y( u% V: r5 X, r8 x
                swarms.buildObjects();* \* ]! c- k5 g' g
                swarms.buildActions();2 J" D: e: p' Q/ r( c
                swarms.activateIn(null).run();
2 ^  u+ j0 c3 J5 @' Y        }
# q. v" v' {* K! J7 W
3 V; w* L3 j" h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 12:55 , Processed in 0.014072 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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