设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12575|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* N, d/ b( W5 _: K3 ?( i6 P. d( w: K. s( X0 {/ o  d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* ^* q& h/ A/ m* Q  U* T5 {3 H* d1 z* z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ G9 |6 y+ N4 V) h& E
swarm.SignatureNotFoundException
0 i7 J; q- _6 x. q7 _5 ~        at swarm.Selector.<init>(Selector.java:76)
2 v% A3 K3 v4 Y% m) H8 B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ D5 R. S% ?2 G* p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& @2 p6 ~0 q2 V2 r5 K3 z
0 z4 k  e( ?) `% _3 T6 o5 t
1 p0 g! k$ A2 O
import swarm.objectbase.SwarmImpl;3 ^. X$ Z& L* _2 h. U( ^% Y
import swarm.objectbase.Swarm;
8 k$ _; B) `' rimport swarm.activity.ScheduleImpl;
3 S8 H* @, c! C: T! t' Oimport swarm.activity.Activity;
. R6 Q/ k' {; }( aimport swarm.activity.ActionGroupImpl;
. |) f# L/ x$ I$ t1 M) }: A$ E2 zimport swarm.collections.ListImpl;5 Q3 ]/ K7 s( R1 i6 d
import swarm.defobj.Zone; ; h8 |; c2 c8 {
import swarm.Globals;( L% D. l) w" O+ S
import swarm.Selector;0 K' I0 }$ }7 Z) N, x. X
import swarm.activity.ActionGroup; 6 l0 ^' Y: k" W6 _! k
class Agent {
, ?: s6 W4 D3 b3 Z# S5 Q/ y        char id;  s4 ~* L( w3 Z: E! S; W
9 Y% U, e* {. }3 k5 e) }
        Agent(char id) {  V* z, O" ~) z! b- [% t6 o
                this.id = id;6 z2 I2 W& H- h" S
        }+ O! y5 x4 u: ?5 U

4 q- I9 {4 b1 m  x  u5 a0 A( s) @        public void agentStep() {
# O/ E+ v/ `/ `" L  ~                System.out.println(id + ":" + Globals.env.getCurrentTime());
' Y4 h1 x2 f3 E3 S! B  n' t        }
3 z& S7 A( Z' x/ O% h9 G}
- P- P7 m) r: X1 w8 P9 a/ Y" w
6 @' [4 y; v) ipublic class ActionGroupDemo extends SwarmImpl {0 E0 S. |8 _8 O5 B: ~2 y: p; A; h% H
        ScheduleImpl schedule;
% Z1 ~# }9 J; c5 a: b% k( b2 q( Z4 [        ActionGroupImpl actionGroup;! w$ o0 f4 i! {- k: U' c" m# {
        ListImpl list;! w/ i! x' \% w! g, J9 o2 q
        char Id = 'a';5 k9 o7 D9 t" y8 T1 c' v( {

9 \) B4 b- [% S, g" A9 z+ ?5 A/ y        ActionGroupDemo(Zone aZone) {
& J; o; O4 Q; y4 O$ N                super(aZone);
+ `8 n9 |: }) A$ x& g9 n1 ]& U                list = new ListImpl(aZone);2 q( d; G$ e3 Z7 T" s* O* m
                swarmSetp();
2 f8 b4 M. Z9 F, L" t- H                actionGroup = new ActionGroupImpl(aZone);
( t5 k' d% L6 R; T& V- f                schedule = new ScheduleImpl(aZone);. r7 b5 U2 a( T( Z7 ~- k
                try {% Q! {. x* a- V( R3 k! j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' {) C7 k4 x( x0 Y6 i% B
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 k2 C+ U/ z9 L0 n. D1 {! v0 V7 H, f
                        
0 c. t: P3 a( b# @+ C, m                        actionGroup.createActionForEach$message(list, agentSel);0 i% y) i9 Q8 e. p6 |9 r8 B6 C
                        actionGroup.createActionTo$message(this, swarmSel);0 |# e. ]7 r. L. \( ^1 [1 d* V$ K/ y
                        schedule.at$createAction(0, actionGroup);
# @; E: }8 z* [* }+ T; |0 e$ W                        schedule.at$createAction(1, actionGroup);
7 s7 W& o+ H* C. P4 s                        schedule.at$createAction(2, actionGroup);5 H. f& J' f8 X/ w' }" Y

: ?% ^3 v# R5 J# c( Y; A- G                } catch (Exception e) {& m8 O; o4 L" U! x5 `+ p$ r, g! {
                        e.printStackTrace(System.err);$ p) Z$ a' I0 ?8 d
                        //System.out.println(e);2 s+ J* s; Y8 b5 X
                        System.exit(1);; D/ M: N1 C2 [; x2 d
                }
- P% \% s  c3 [4 H6 E
6 j7 M% E8 W, D% n* j* q1 _( u) C% ?9 e
        }  G3 g7 O7 [$ e% a( ]0 r! B; m! j2 C: [
5 X+ [  O" T5 J( c* n- H
        private void swarmSetp() {
  d1 y+ I7 z) X/ V) D3 r' `5 @                list.addLast(new Agent(Id));
8 Z8 ~  ]5 `. C# c/ d5 r  q/ l* J                Id++;& Z  x0 U$ e( A
        }0 \) j1 U5 L! D1 E- B% \* _# C
' @6 J7 J" f) l* B( B* e- I
        public Activity activateIn(Swarm context) {9 {& A* f. N) u) Y# g8 k, }! c
                super.activateIn(context);1 Q% C% V/ S8 Y7 |
                schedule.activateIn(this);
% M% V5 I! H! d                return getActivity();
, T5 g9 x/ f% Y2 T2 {        }8 w2 T1 N5 P4 r+ c
3 b0 v5 u& M& B/ V# [
        public static void main(String[] args) {
% v8 a( R# x9 w- S6 \! s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* t1 W. D2 Z  N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, l  @, F1 J0 K6 }: D' v3 q                swarms.buildObjects();1 o7 B. }+ h: p
                swarms.buildActions();4 e5 x8 X. @2 i5 ?9 s
                swarms.activateIn(null).run();
% o* i+ V- O) ]* J+ Z& t        }9 W, w+ r" E+ s* A+ {* u+ z

7 e+ S4 t. V, B- w, K' {# e3 |0 Q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-12 17:28 , Processed in 0.018573 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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