设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11004|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & k0 ]% N  P' p5 k3 I) w+ l# _

; S* q% k& c# e6 g  [/ I# ^* @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 p4 z' t) N& S; f+ `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., |, H: \: A( E$ C" o9 s
swarm.SignatureNotFoundException
2 K5 W! ~+ z3 ^. ]        at swarm.Selector.<init>(Selector.java:76); o" y7 k# l  X; j, Q% C7 i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! b7 ?/ p/ U- A+ Q( c7 Z2 {        at ActionGroupDemo.main(ActionGroupDemo.java:67)( t. c# n2 @/ @' `

# }4 T; z; Z# a9 e9 e/ g' d/ @0 B9 A9 @+ V% P( y
import swarm.objectbase.SwarmImpl;. u0 W+ S; J9 P2 F! j' x
import swarm.objectbase.Swarm;
! [! H( N( |1 U2 k0 wimport swarm.activity.ScheduleImpl;' t4 O' p8 V; t$ f% i, Y
import swarm.activity.Activity;
+ L' C' x3 R8 I  [import swarm.activity.ActionGroupImpl;
0 p# O1 _6 @& Q# ]$ O; n( Ximport swarm.collections.ListImpl;( B: D. G! K: H5 e) p! T
import swarm.defobj.Zone;
. M* ~% Z' s" i0 a. rimport swarm.Globals;! N- c6 J6 s8 [' L* O+ k2 j# V! T/ [
import swarm.Selector;5 ~4 T. m  R7 q% @5 b0 S- X
import swarm.activity.ActionGroup; " P+ _. N4 c" W
class Agent {! ^/ Z( h$ z7 |
        char id;. k0 P2 f% g, X' R  G0 c

& n# q& N1 e( \; k2 q2 g, Y+ x        Agent(char id) {; X# H, `3 d6 A8 w* n
                this.id = id;( A# H( k1 z- h2 Y4 B# O
        }! z) q. G5 S# \' J! W

3 r2 \1 c- ?; b1 H0 Z        public void agentStep() {) A" E( F! @- _
                System.out.println(id + ":" + Globals.env.getCurrentTime());; b9 F8 ^, e* U1 f/ |2 |4 B
        }
/ s( n% |" T2 C! W' t6 x}
- l$ I, g( T2 ]2 b% F; _- J0 A2 C- J! ^! b4 u2 M
public class ActionGroupDemo extends SwarmImpl {! ^! c5 d3 C" h6 k# z, o
        ScheduleImpl schedule;: ?! {9 A) s- [" ?0 Y+ q
        ActionGroupImpl actionGroup;" \! J% N, `/ O- a7 \
        ListImpl list;
& x* c9 u4 B/ N: @        char Id = 'a';; |5 `( V/ j0 `9 }  q

2 o% `( s7 c. E) z( t0 {4 K        ActionGroupDemo(Zone aZone) {6 J9 l. r! L2 h, N: @0 F. i% N$ O
                super(aZone);
9 j( y6 l1 a: ?/ a* P/ i" K- S                list = new ListImpl(aZone);! f' a8 H7 u/ y  l' I
                swarmSetp();% v8 o5 u! H- M- |5 I2 m
                actionGroup = new ActionGroupImpl(aZone);
& t; R# B, r% B; s% \' e  n                schedule = new ScheduleImpl(aZone);
% \" Y5 D8 p8 D8 o- U3 ~8 @! D                try {
+ B0 S$ q1 E0 r/ x+ x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: D, I$ X2 ]" S; ?0 J& M3 Z( O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  S& \$ q& g0 l8 B) n+ w! G                        
8 Z; l. ~  p$ H2 s+ w1 d                        actionGroup.createActionForEach$message(list, agentSel);$ D0 S9 Z9 @; }
                        actionGroup.createActionTo$message(this, swarmSel);
/ t; t8 @0 t$ O9 ~                        schedule.at$createAction(0, actionGroup);
+ q2 z: d7 V; a) E                        schedule.at$createAction(1, actionGroup);* W# h' b/ J1 Z! W) R* x/ U; F/ U
                        schedule.at$createAction(2, actionGroup);. q# N5 h: C5 G/ q; h6 K! L! B
; W; M; f* t' s" w
                } catch (Exception e) {
& c- X! A& V: O4 P                        e.printStackTrace(System.err);- F# b4 q0 ?1 U! W$ J5 F
                        //System.out.println(e);
- }0 a5 L" H2 }9 T5 d0 X1 N5 x                        System.exit(1);7 ~) [( @. J  l! p- C& K
                }
4 u7 c* f( v  x* L: C4 e2 S- @: j) ~: ]# T' R
0 b/ Q5 d# }  i5 d
        }
0 o, S( z+ `1 [1 u& v: q: _- u! o- b$ F% E% D) M: N( R$ I8 H
        private void swarmSetp() {
; g2 S- W# I  ~! W8 |7 e                list.addLast(new Agent(Id));5 h4 L0 r7 q. r- y
                Id++;5 `& e* G" [- x7 J( F2 T0 O
        }" m% a2 f0 f; o" s/ Z: R4 q
3 D) @/ H  A) T& Y& Y' K
        public Activity activateIn(Swarm context) {7 {+ R6 m( m; r/ b+ Z+ z2 v
                super.activateIn(context);
. c8 u2 \8 m, e! s4 \  m) v                schedule.activateIn(this);
1 D" p' [* [# e& Y' i                return getActivity();/ ?- H, M2 V* a8 ?
        }, `. z+ N) Z! w" V
) Z* I+ _* t1 S0 {4 E
        public static void main(String[] args) {
# t0 d# k/ {0 @; T' o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ F) ~' y" ^# Y2 D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# ~+ d$ v5 K. u; ?- N, d  R7 K                swarms.buildObjects();
- a% t& }6 _7 j- v' r                swarms.buildActions();
2 _  f8 f/ T; b% h0 `                swarms.activateIn(null).run();; `0 x' N+ {5 W" P: z9 s' m/ g
        }* \/ k; z0 M& b$ p0 l4 x( y

: h- e0 T' N" Q; g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 02:13 , Processed in 0.013318 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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