设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10384|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 C+ y. p, x% v0 y
$ f: t6 @' X+ [; }% C( U& m8 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; @6 a+ l9 L8 t% C, F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- q4 v# E: u4 J3 b3 [, @5 G
swarm.SignatureNotFoundException
( q0 k5 z$ w8 a* W/ Z9 |        at swarm.Selector.<init>(Selector.java:76)6 j- k. |- r6 f# Z8 }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  X! Q) r$ m& C+ N6 C8 R
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) _! s* A! h% ?; {( _
1 x2 e2 P) D' M2 D$ ]' ~; ]  C1 P1 i* A5 O/ g
import swarm.objectbase.SwarmImpl;
) l( v  f/ J6 u( ^- k1 Fimport swarm.objectbase.Swarm;* I: B0 N2 {9 b- u4 g7 s0 D# s
import swarm.activity.ScheduleImpl;
2 v8 L; Z$ [$ F+ qimport swarm.activity.Activity;
0 K3 J& W- B) g0 t: V8 Gimport swarm.activity.ActionGroupImpl;, E6 I( h- k! @# n# O
import swarm.collections.ListImpl;/ A- U7 J+ K2 f
import swarm.defobj.Zone; , p$ v* B# v2 D% X3 E$ E
import swarm.Globals;" c7 J; A, G/ I) y( h3 t; C+ ~4 q
import swarm.Selector;
; ]! g+ Z3 _6 Y; P& ^- Y7 wimport swarm.activity.ActionGroup; 8 t# T; i; L# o8 x% V
class Agent {
/ K' \& b  @+ T2 Y- J" S: `        char id;# M' x+ g. _1 r: B8 A& S

6 W5 {# `, e' S5 G        Agent(char id) {% B/ \9 u5 s9 O; k3 z+ v
                this.id = id;+ v3 o; _; T, l$ S5 V1 W, \) y# C% X' q
        }) s2 w+ ^: ]" p
- ~& j6 A9 o, z+ f- B2 Y" i
        public void agentStep() {0 W/ ]( U# k! J$ Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) O4 }0 c# U; ~5 i& @( b* S, B        }: F! T$ Q- ]+ b; e
}1 n9 ^. {  P7 c4 O) M) M4 U
0 d, r7 z4 G7 D; a- J. q
public class ActionGroupDemo extends SwarmImpl {$ Y" K2 L$ r. w7 J3 S
        ScheduleImpl schedule;
7 t) B1 G! e1 x2 s" D        ActionGroupImpl actionGroup;
  _+ j3 L# {( H0 E% E        ListImpl list;
/ d  i1 Z- o  E        char Id = 'a';- D5 ~- o4 L7 F, Y3 V. q1 x

2 T  A6 y: ?0 T; s  F9 O( T$ j        ActionGroupDemo(Zone aZone) {  m0 E+ {  ^7 a' W
                super(aZone);
& M$ f) s- B/ @4 k$ X$ H/ r                list = new ListImpl(aZone);
; h7 _0 m2 u8 f/ u: Y: g# o2 e) h                swarmSetp();2 `" y$ B4 H" [8 P
                actionGroup = new ActionGroupImpl(aZone);
" z  u% f$ {4 k: \% f" b                schedule = new ScheduleImpl(aZone);  X8 Z0 N7 C8 P
                try {
8 x3 b3 n0 O- f' D: M5 x( }# M1 R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% G# X7 e2 E9 I1 G7 k. G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( z( `# j3 u7 m
                        
) j7 x* Z7 p1 t( P( V, F& P                        actionGroup.createActionForEach$message(list, agentSel);
- W8 Y4 \4 z( t% C                        actionGroup.createActionTo$message(this, swarmSel);. o. S$ x2 ?! |2 P) a
                        schedule.at$createAction(0, actionGroup);
- C4 F! e- Q+ x6 q% {. a4 H                        schedule.at$createAction(1, actionGroup);% q* G: e; f9 \
                        schedule.at$createAction(2, actionGroup);! e; ^* n' q  o& h+ h. g: @8 {

8 q& _- O$ P0 c/ _: y1 Y7 y                } catch (Exception e) {4 ~$ I( k$ a. Y# h
                        e.printStackTrace(System.err);
+ Q: v0 u8 _# E' ?                        //System.out.println(e);  ?! e  ?7 b- \+ x1 K2 k
                        System.exit(1);) k( O3 k5 ~7 z6 a# h5 _4 \& H
                }
2 S9 m, q( C9 B- r# S7 \
, a8 T& d, M; T% w; ^. O
9 x2 v6 `* U5 v, p        }
& ?- E: S5 a# F% e0 h' }& }" i
! L1 b1 T) N4 ~0 f) n  N0 g        private void swarmSetp() {/ g: O7 L& e7 U' F$ P* u! B
                list.addLast(new Agent(Id));; A, r1 m2 x) h  M( _
                Id++;
1 P" `; H7 M5 l        }0 c7 g7 C( ~! d1 v  l- b. L  W* t
. `* i+ J. W8 o- j) ?: U
        public Activity activateIn(Swarm context) {1 E3 x# K1 x' p4 R3 X$ K
                super.activateIn(context);9 D! X% Q1 O) O9 k( A
                schedule.activateIn(this);
8 T( \4 ?2 [# }                return getActivity();
( V9 X0 P1 z5 M4 z; r) R8 S        }
+ v4 E5 m6 H" P" W  @1 i  g0 ^9 e9 Q
        public static void main(String[] args) {. X: ]- g! U+ w! ?- L2 p7 f( N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- g# r# S+ Q5 ]* j8 j
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 b7 r3 }# C7 n* l
                swarms.buildObjects();, ]2 ^' A7 t* r5 |) w, T8 A0 A) d: }
                swarms.buildActions();  J7 g1 p) @/ u9 t9 M) T; W' m
                swarms.activateIn(null).run();
& Y) O# g: j2 j        }: x. q4 P. n; G2 b8 w
- P% r: C3 \+ a' B. E) e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 19:52 , Processed in 0.015449 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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