设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12116|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; n0 }) U9 d2 @# G8 Z) s0 e* K
& w& z, G; y) q) H! m# ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& g3 D: G' G, Y3 D6 U. e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# _. r  `& k, u$ }. Dswarm.SignatureNotFoundException
2 ~/ V% t! d1 n        at swarm.Selector.<init>(Selector.java:76)
  L/ R& Q/ ?+ @- C' R) P: ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): l: f3 n' w7 h1 K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)" ^3 Z/ R& \# e" g( g* h( Y

4 [& x5 D& l0 K) ~! `- Q. X5 E7 P* T0 k. K) ?
import swarm.objectbase.SwarmImpl;
& T: h: G! K( P) p/ c! M/ Wimport swarm.objectbase.Swarm;
- K- E) w: y. ximport swarm.activity.ScheduleImpl;
# R+ N* G/ X% {import swarm.activity.Activity;
/ [: L' Y) o5 I7 h, Ximport swarm.activity.ActionGroupImpl;: \6 ^. T) L' }; x' \$ ?! Z" J
import swarm.collections.ListImpl;
" D3 U% [  ~- G" o. G9 s! Timport swarm.defobj.Zone;
) S3 D- ?. |1 e# f6 E! M$ o( timport swarm.Globals;: S2 ]; E0 q, B  d: h7 ~7 ?; e9 D
import swarm.Selector;; _1 t  |- t! P
import swarm.activity.ActionGroup;
) v/ }6 A& Q6 Nclass Agent {
6 h2 V3 T5 x! x( M3 d) N0 L        char id;
4 E1 X9 s7 |! o; E7 J: d- j* M* C2 K& N% `
        Agent(char id) {
5 ?1 _8 ]. L3 x9 e7 n7 x5 |/ S+ U                this.id = id;
6 ~4 q4 v6 U! r/ {        }; d, i2 S8 W9 R

) @' L' l3 v# u: [* l        public void agentStep() {6 g, \' _% t; ^( D3 g& h
                System.out.println(id + ":" + Globals.env.getCurrentTime());4 V% m8 F& {' x) G  z
        }" W& i5 O# j. m+ m1 Z1 l
}
( L4 D2 g- U$ z( L  a8 X' S
0 M; B# ~# p& i# b  ypublic class ActionGroupDemo extends SwarmImpl {
% Y2 M0 I6 J: ]' g' q        ScheduleImpl schedule;
5 N- j. N7 F& M2 F3 {- l% u        ActionGroupImpl actionGroup;, v- T0 M2 T9 d; V% d& a* n
        ListImpl list;2 o. n* ?. O/ D' g
        char Id = 'a';
1 o; R/ B+ b; ^8 a1 ?8 n
9 |* M+ R9 d6 m9 O1 h& P2 V        ActionGroupDemo(Zone aZone) {
4 U2 l5 F: V3 }                super(aZone);. D' s: X6 n  f. w2 [  p5 E
                list = new ListImpl(aZone);5 X( z+ H# K! A- H$ P7 a- w
                swarmSetp();
. Y5 f! Z. a$ M, A" ]5 K% h8 Y                actionGroup = new ActionGroupImpl(aZone);
. y+ n# o6 q5 \/ I' Q                schedule = new ScheduleImpl(aZone);# q/ ]* Q) F4 v; b
                try {
% A1 q5 ]) z# p- p7 d! ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 R$ u' F5 s% o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* i% C" A* S8 _3 F! x% v$ X                        
0 Q: b, f) O% O: E! _) R) T8 Q# _) J                        actionGroup.createActionForEach$message(list, agentSel);9 s, N% r  X' ?- w0 t9 `4 J
                        actionGroup.createActionTo$message(this, swarmSel);
' x" L3 U8 u( N: P% w                        schedule.at$createAction(0, actionGroup);) l+ p  e$ L2 t- u' ]
                        schedule.at$createAction(1, actionGroup);
! P. x* U, t  u' [+ f. @  ^                        schedule.at$createAction(2, actionGroup);
3 u3 ], _: r( n$ P7 `4 Y
& t, g) K7 f+ f$ t+ f                } catch (Exception e) {8 C& T. A! C0 X, p4 z) I
                        e.printStackTrace(System.err);1 J: m' Y6 k1 m% K& u' p0 l
                        //System.out.println(e);5 Y/ C' N5 T' I+ p- n
                        System.exit(1);3 T0 a7 n3 W# ]8 p
                }
4 Z9 T; O: d) C) a/ X6 A6 w: o5 m  }. o! [: s4 _2 ^

& ?. b0 r5 D4 v. Z9 W; K4 m6 U: ~        }5 [8 l* B( Z' J* @. U* r$ ~
2 {0 o- Y2 U' _0 x: [- }! B' X
        private void swarmSetp() {) ~3 j% |; q" ?: I$ j
                list.addLast(new Agent(Id));
- z8 _+ ^! Q! x# X7 i0 R! V% P% R                Id++;
, x$ X$ y/ G! ~0 j" |! y& W# b8 q; `        }) }0 k7 z3 l7 B6 H; I6 v3 p

$ ]- j% w- A  @; N8 D) ^* q+ C        public Activity activateIn(Swarm context) {3 N/ ?; T" k6 ?
                super.activateIn(context);* q; ]7 O5 A7 `4 I* v* O; x
                schedule.activateIn(this);
7 _0 @4 U5 `) }! F, Q1 x                return getActivity();; B$ W. L  F4 H/ ?  x8 [
        }* @& `# h- U+ E
+ p! q. [9 P$ L2 m; d2 G
        public static void main(String[] args) {
" \9 i% Q% F( P: a/ z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" s$ i* @2 ~# e! g* R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! K- F9 K6 i& J3 O" D9 p                swarms.buildObjects();: \7 L) Z. c2 y/ `  a
                swarms.buildActions();
2 n/ a" Z1 u% m                swarms.activateIn(null).run();
4 g1 Q+ v% B+ \& w5 T        }* y4 M  O- H7 m) E
* j3 r2 N& q* m& r! f7 Q5 s) T6 D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 20:53 , Processed in 0.017297 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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