设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6854|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   }' x' e$ X# G, W7 p% f1 W( Q5 z

; i2 T/ S2 v& T  u- N: T7 c' O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* {" h3 P# ~- s! k& W' \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" x  N7 Y2 c/ \swarm.SignatureNotFoundException. a$ I0 e. |& E" E  s
        at swarm.Selector.<init>(Selector.java:76), c  a, d4 _4 g2 j" t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, p& g5 @; n" g# r$ l# [# S        at ActionGroupDemo.main(ActionGroupDemo.java:67)  G6 E- ~4 `/ w/ `: T

6 V( N/ w. |7 c4 z: H) \- n, r6 ^3 d. w; B2 L, D
import swarm.objectbase.SwarmImpl;
* N/ M0 q$ B7 I- S: kimport swarm.objectbase.Swarm;; {; a" L/ T. ^
import swarm.activity.ScheduleImpl;( i& @$ G4 T& _2 {0 |6 Z
import swarm.activity.Activity;
" Z9 |- k/ e/ b' m9 }! `& ~7 zimport swarm.activity.ActionGroupImpl;( [! j. ~, _; u5 \+ R
import swarm.collections.ListImpl;
$ u8 ~. U* H8 L5 bimport swarm.defobj.Zone; " E: ^. m* D" y& B- V
import swarm.Globals;0 n2 G: H2 I% i3 C. X) C5 l
import swarm.Selector;
: M+ n" c5 T- N+ I9 \( g5 y5 q/ ?import swarm.activity.ActionGroup;
+ G2 v) K7 k% V- R7 z2 Vclass Agent {) W. O( I- v  ~4 J
        char id;
' ?% w0 T+ {3 v3 Z6 ~) X
0 M+ y& H( @  J2 N& d        Agent(char id) {
( F- M# a: O9 |5 y                this.id = id;
# S$ X/ T1 n# }# i6 \7 `( T* J        }  s3 a- y7 M5 ]" o* |- M

) }9 v- I' S% m/ `        public void agentStep() {) P( \2 u8 x7 \' q/ t+ K% h* i0 H
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 P6 i" ~% A7 E3 W$ x$ B# q        }+ K" j0 Z1 W4 g* u) e$ C+ ^/ g
}
+ T  D) @- w5 w: f9 E5 w$ I) [' Q+ q+ s& ~
public class ActionGroupDemo extends SwarmImpl {4 f* B# b4 G0 T# `0 d$ G
        ScheduleImpl schedule;
) d3 E& \, d" I6 F9 \        ActionGroupImpl actionGroup;+ v$ W, B9 P% z, k7 [! f' p, c
        ListImpl list;
1 @1 u+ B  R, ]+ y/ J( H- f* C        char Id = 'a';
6 R. D' }0 K1 {) A6 G+ k# b# c5 `: i* W) G
        ActionGroupDemo(Zone aZone) {- T7 `* H6 a$ A% {
                super(aZone);% F) T, b2 m" g( `& {8 V6 r4 R
                list = new ListImpl(aZone);) R5 n! ^. Z, v" k8 |
                swarmSetp();
' b! B8 z1 W6 H7 ?/ m2 ^                actionGroup = new ActionGroupImpl(aZone);/ S2 ?- F7 r8 S0 ~% j  a
                schedule = new ScheduleImpl(aZone);9 p# i: I6 G$ T0 |" t
                try {. `: u, z$ h- K5 F: g. ?
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: U* f' r9 e. F' [$ U8 p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 I* X# h* Y0 \                        # s6 H) R: d& |) }
                        actionGroup.createActionForEach$message(list, agentSel);
2 j# e4 h- y5 S2 h6 g# a% @                        actionGroup.createActionTo$message(this, swarmSel);+ g' T* I) `) o; o
                        schedule.at$createAction(0, actionGroup);% a" y, e+ d" L  O6 i' n2 o
                        schedule.at$createAction(1, actionGroup);" P# i5 n: V" _0 J3 k: `7 g
                        schedule.at$createAction(2, actionGroup);
0 q1 c3 h8 t* \5 `, A
$ u# [* O$ H- V6 h% }6 ~* A& A                } catch (Exception e) {
5 V- A3 r- R- E                        e.printStackTrace(System.err);
. b6 J2 w( H( [: k  J6 x; p  ~0 h0 `                        //System.out.println(e);1 e5 z* D: D# a4 v
                        System.exit(1);
& ~: d2 u; ~3 ~. d7 x- E                }  y6 n5 J9 g! J5 s! G1 g
0 W/ Y2 E' `# C( I% A4 o( g

: V. `' }5 N& G% E3 H        }; y( A0 P) x" N
3 O" h( S( S( X
        private void swarmSetp() {
) H9 K) J& Z7 {3 F& U* o' Y( s4 W                list.addLast(new Agent(Id));
: ^8 J& ]0 d2 o6 o+ }                Id++;
0 l1 {! z/ W% }1 ^+ d. P" L        }
- J# x. C+ T* z/ A1 \9 A- P8 z. U  n6 J! Y: J9 l$ |$ ?6 t2 s5 C
        public Activity activateIn(Swarm context) {
# J' S: H7 ?" ^7 O% b8 @                super.activateIn(context);
/ U& O( C: Q# o' L5 b/ \' |                schedule.activateIn(this);
. u% A% z3 j7 @+ y4 X% G                return getActivity();, H* i" ?/ ^0 J" {; L3 a2 N
        }* K- P4 M& i- H5 L4 U7 U
, }! T  V7 Z& ^
        public static void main(String[] args) {
# f' C9 z7 Z% r% ^9 S4 S                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 h3 X. _: M* ]- m( d2 Q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! l! k% T- B- V1 L
                swarms.buildObjects();
  ^8 c1 H* t0 K8 i, p) V0 f. ^                swarms.buildActions();
, A  i, x6 Z* U0 o" g( f% a6 e                swarms.activateIn(null).run();' F5 n0 S( m" T# C4 ?
        }
) n$ m" ^9 m0 v6 E# l+ }
* N+ a4 x1 q& p0 X; ^! F}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 06:14 , Processed in 0.019917 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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