设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13150|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # O3 P, n1 W" C1 q% H% {) I

, {3 Y% f- `5 q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# }7 g# b: q& X/ ?' s" V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; C- f% z, Y- G4 c8 X3 O, i
swarm.SignatureNotFoundException
+ h  B1 F. w) d7 l1 j1 I% q        at swarm.Selector.<init>(Selector.java:76). U2 W+ E- p1 s0 u* v& p7 v  b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 w+ q1 C9 M) Q$ ?4 s3 E8 Z6 h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
& r( j2 b0 c# H! u9 w* Y6 v* Y0 O) V" t/ V2 c

+ y4 Y/ C) e, a9 ^' V& b7 @/ y" Limport swarm.objectbase.SwarmImpl;! l  P) D# ~7 p5 t$ Y
import swarm.objectbase.Swarm;
2 \, j/ s: M6 N, \* w0 d4 bimport swarm.activity.ScheduleImpl;
: W$ E! Q! R3 ?: ^2 k# n0 R- gimport swarm.activity.Activity;
% ^9 J8 S0 I  Z6 w# g4 {6 @import swarm.activity.ActionGroupImpl;1 H! c2 B$ G/ ?
import swarm.collections.ListImpl;3 {7 G: ~  `$ K* s
import swarm.defobj.Zone; & y; L$ `# @2 a# c! k& `
import swarm.Globals;. {& `0 Q/ Q5 a3 p% Q. v
import swarm.Selector;
0 z, @5 ?, s, `import swarm.activity.ActionGroup; 2 J4 x! Y9 v" S) V# e; P
class Agent {2 z, t% u) U  N0 O1 R& S" z
        char id;. t3 s$ ?8 I, [$ Z

  g8 C) |1 C5 ]: X: j        Agent(char id) {
% U% W: I, |5 E- c  p8 N                this.id = id;
1 h& P8 u& K3 S2 M        }: Q- b  \* {/ P0 g. a9 S
+ K  u1 I+ i. }8 D
        public void agentStep() {; Y9 S: N/ \% O5 @& a
                System.out.println(id + ":" + Globals.env.getCurrentTime());& o) J3 s6 l* ]
        }* q3 B6 K. y) \: j( C
}5 E. E6 @3 P2 C# b+ f9 Z

- o0 t- T# p4 bpublic class ActionGroupDemo extends SwarmImpl {
, A: u2 s" D7 i: I        ScheduleImpl schedule;. E/ e2 U: m! F( L
        ActionGroupImpl actionGroup;5 {& Y1 [- A6 [9 h9 F) l
        ListImpl list;
0 ^3 i- H" S8 ^  P3 m        char Id = 'a';4 |7 j0 e8 D" y# Y( Y8 s( M: E% Q
' N) g5 q: S, y& J  s
        ActionGroupDemo(Zone aZone) {
. q" S4 E- Z4 ~) ^: u6 j: V: I                super(aZone);8 P' W3 \& b/ V/ ^! ^. }1 A( O
                list = new ListImpl(aZone);
' C9 a8 k  m7 ^( r* w. n$ o                swarmSetp();
7 E% {) ~4 g3 C3 Y" B$ K                actionGroup = new ActionGroupImpl(aZone);
& u+ \6 L: r4 D                schedule = new ScheduleImpl(aZone);  T- Y4 y. N& q$ j( a7 f2 N
                try {% ~" s' }# l. B5 `/ s: V; I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: [; ~7 i% F2 B' b8 o- U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 d6 o0 p) X* T                        
5 c" |2 y' k) |5 h; J                        actionGroup.createActionForEach$message(list, agentSel);9 E% G8 n; ]8 H' _- n! _4 W% g
                        actionGroup.createActionTo$message(this, swarmSel);2 E! F2 B& v! m) V4 J0 B
                        schedule.at$createAction(0, actionGroup);
/ l/ x& h5 J, I! B                        schedule.at$createAction(1, actionGroup);
. }- K: D0 ]; S                        schedule.at$createAction(2, actionGroup);
- T& L& Z  H" _+ a( E
0 J9 Y; J* A5 A4 k' [3 d8 N                } catch (Exception e) {
* h3 w" P4 g5 \8 g/ e                        e.printStackTrace(System.err);% C# f9 j. p- O/ ~) \  d+ v
                        //System.out.println(e);
+ g! a( T/ I; }                        System.exit(1);/ f6 _) I- R' n& v, \; \" o* T2 f
                }
; S" E  S0 S7 o; a# }" N7 b: W. J0 L5 R# ~4 O
; d+ x7 Y; b& X/ {% ?
        }
$ j4 C2 a- f" r/ k6 p* b2 k' `, o8 X% Q6 ^: ]0 U
        private void swarmSetp() {) B( G) p, d2 E3 @" q# _) g
                list.addLast(new Agent(Id));" ?+ i6 ?5 d* a& s! S! V# i
                Id++;8 y. o5 P  Z/ F+ ^' K1 W9 k# ^
        }/ V. P/ K5 C. o# ?
- Q' Y6 g2 J" _) I
        public Activity activateIn(Swarm context) {6 F- V0 N' f3 w- B
                super.activateIn(context);; ?1 U4 p, V% M8 i, U
                schedule.activateIn(this);
$ f' T2 j1 h9 y# {6 \3 v% t: o                return getActivity();! j' x# i7 v( M$ M& m' I
        }
& T* _; M) c* J! [% g
- F- I& S5 I( I: u0 L& H        public static void main(String[] args) {
+ n9 x/ z; G% [* I1 x+ w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 E. @: _2 l: }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& u5 \; a/ l" g% [6 F( l$ T
                swarms.buildObjects();
( ]( [% D$ y4 a# g: t2 G                swarms.buildActions();
+ V; ]8 C. o4 y' n7 [$ o& a                swarms.activateIn(null).run();  l  I1 a! K2 i2 |' w' Y+ e7 c6 T
        }
9 J# r. o" e# p- M' n' m4 X5 r) Q& ~: q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-29 19:33 , Processed in 0.016260 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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