设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5956|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( a9 M4 U  |, d
) D+ [- H7 z6 [6 }  Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. f5 |' N* W6 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 U6 k5 P* ]/ c  f8 U1 m" z
swarm.SignatureNotFoundException- e0 A! F% I# P
        at swarm.Selector.<init>(Selector.java:76)
0 |' @/ Z9 M. K  V/ ^* Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 E! |; `: ~+ E1 q. Y8 B4 O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 U. J0 T* |) o' F( ]- }9 L

9 a+ \6 \9 O- k. a
3 m' g. x1 K& n5 a/ P8 ], d5 h2 fimport swarm.objectbase.SwarmImpl;
2 q, _/ ~1 Z4 g- f( K1 b6 yimport swarm.objectbase.Swarm;
: J8 i* Q! r7 r9 zimport swarm.activity.ScheduleImpl;' A9 w+ P6 F) e1 e, F8 b
import swarm.activity.Activity;
3 @) T% S+ {3 e* o- T$ ]" _import swarm.activity.ActionGroupImpl;
  i9 I1 F. z5 o5 b$ ?) i% r, Kimport swarm.collections.ListImpl;  S1 V* ~5 q. Z- q0 s, N
import swarm.defobj.Zone; ( p" Y: w6 N+ x/ W# h6 b  `
import swarm.Globals;, ~) N! ?# e% j2 Q# ?6 @
import swarm.Selector;5 o1 Z6 N9 o9 d, U' O! ]
import swarm.activity.ActionGroup; ; `" A. r9 ?8 L$ q8 z! j
class Agent {/ W$ @4 f( r  V( U1 `! S0 K
        char id;
; u3 t% |) o% s% S
" r& M. u% b' J( E0 U* \        Agent(char id) {
# b& l8 |& s5 `& Z                this.id = id;
% P, w; ?- W+ Q$ A7 u: B! N        }% a. X) G+ [+ d# n! F% \% m

1 F+ F" H/ U3 j/ p, V        public void agentStep() {- E3 V; M4 ^+ c) d
                System.out.println(id + ":" + Globals.env.getCurrentTime());: u: Q+ [: a' O& r  v4 X( y6 d
        }  ]! Z4 H' O( K* U% m0 F9 W0 K
}: Y, O) a: K0 q7 L$ w
; u' k; o$ I' A4 O. {6 S4 \0 E; y
public class ActionGroupDemo extends SwarmImpl {
" H; w7 b+ }0 p8 j8 m        ScheduleImpl schedule;+ {, b/ o1 N9 g: n7 ]- J
        ActionGroupImpl actionGroup;
4 x$ e- H  J. [( U1 k: u, t        ListImpl list;
0 ^! c$ k3 U8 k6 A/ Z# j        char Id = 'a';
. c% l) u6 \7 b- w  \0 w) G0 Q# s
9 F5 }2 B8 E4 L0 B/ [        ActionGroupDemo(Zone aZone) {
! V" V* p7 M+ L- Z8 Y                super(aZone);
7 u; [' v  P# ~5 t( p. C* M  q                list = new ListImpl(aZone);, s9 z$ j" k% {9 q" p- w) G% K
                swarmSetp();+ x- q- B/ o3 ~/ v4 r( O2 N  |
                actionGroup = new ActionGroupImpl(aZone);$ T0 q# Z" ~) P8 n5 t+ L3 [
                schedule = new ScheduleImpl(aZone);4 m; y' L- |- t+ P+ _( }
                try {
* p, d& _$ ], `& Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- H2 D! ~' ?. T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ R% A- b& v3 j% r% A# o                        
5 o; |* U: [+ n6 [; h; Q4 J5 s% {                        actionGroup.createActionForEach$message(list, agentSel);
- P1 }; m0 ~) R4 O/ R7 o8 \. A- \$ S                        actionGroup.createActionTo$message(this, swarmSel);
. ]3 x# K% }: K: y0 O7 n( z; U( h! M                        schedule.at$createAction(0, actionGroup);. }, u5 ~9 M0 v+ N9 v' \( b; T1 n
                        schedule.at$createAction(1, actionGroup);
* r5 ^9 V! v! a4 j- ^" c                        schedule.at$createAction(2, actionGroup);
' _2 |. @1 A; z; u1 G7 k6 [: r% _( r% i) b/ D6 A
                } catch (Exception e) {% C) O$ ~! c; y) Y, p
                        e.printStackTrace(System.err);
9 M% M7 x+ `6 s- p                        //System.out.println(e);
0 i' ^! J1 r' b2 w- \0 y                        System.exit(1);; Q7 n. V+ |' V" {, c  l2 o
                }7 l" l) l/ E; Z  i; `0 w

' P9 z; B3 m$ E, `. O6 R; |# i: J8 A+ y' S: e
        }
, l8 M0 @4 _- j7 }% F* _4 P9 r5 ~0 s' G! @/ ^- Y  v  u7 X
        private void swarmSetp() {
8 H1 C% m1 R! Z' }                list.addLast(new Agent(Id));
4 \$ M" E  m- L6 R2 K' d0 Z+ l                Id++;
3 }5 L, l# X! }* N% P        }* k( r/ H% s6 A) h

) y! L% I" V2 F) Z        public Activity activateIn(Swarm context) {. M# R. @6 R$ g
                super.activateIn(context);
* k7 g9 u) q- \$ D& V5 k                schedule.activateIn(this);8 r5 C2 D  K6 S0 ~
                return getActivity();  K' b3 U8 _" m( B' P; `* i! S& w, a
        }
2 t' h7 m2 Q) \8 B1 B+ ]3 i( H% s0 _4 H
        public static void main(String[] args) {( z$ @. _$ a. q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' k" d! n: ~% |3 U3 \, q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 E, I! \3 s/ r: [. ]. t
                swarms.buildObjects();
5 c' F" O$ |$ D; x+ c  g$ |2 K) J                swarms.buildActions();* I& }) m# u; z" T* Q0 k1 o
                swarms.activateIn(null).run();% ^1 ?' |. R# `5 F
        }' p5 b6 ~( B0 |$ n

. j+ B0 ?6 p7 R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-12 02:48 , Processed in 0.021479 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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