设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5585|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 s! i1 i6 a$ `: k
% z7 w! f8 m0 t4 j( `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' ^- d9 t7 @/ j5 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 o0 b- c9 w. ?4 L
swarm.SignatureNotFoundException; c9 q1 I$ D: `1 Q, Q6 [4 _
        at swarm.Selector.<init>(Selector.java:76). F' a8 w/ v' B8 P: M
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- |1 m0 _8 O- F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# b2 f0 b) H( K( d% v# i5 x  W
6 h8 D" h0 P. ?, x& q
/ U7 l  h5 y' s% U$ p
import swarm.objectbase.SwarmImpl;
" i" M, V  n7 M: d& Iimport swarm.objectbase.Swarm;; k/ v3 Z: U1 O9 [3 e: f6 T
import swarm.activity.ScheduleImpl;8 {3 g4 V3 Y4 I! F
import swarm.activity.Activity;. S9 O9 k8 y4 K0 G0 B
import swarm.activity.ActionGroupImpl;
: {' a& w; Z% \import swarm.collections.ListImpl;: b, v0 O( ^, f2 X! ~0 p" e1 a
import swarm.defobj.Zone;
( H, o' [2 F* ~3 r9 v; Vimport swarm.Globals;
7 f. p2 ^+ F2 s- ?. Himport swarm.Selector;/ _* H( r7 L! u4 A6 K) P* Q
import swarm.activity.ActionGroup;
3 Q  ]8 ?" _6 w7 k3 Gclass Agent {
  O6 q9 K& K7 ?+ i4 n8 z9 b        char id;
5 [! y& g3 c+ q3 [3 b$ l6 h- D9 Z1 A
% a+ L8 v  T5 o! l" b" G3 o        Agent(char id) {
9 Q8 M; H8 |8 @                this.id = id;
7 Y* C' C" A" Q! a9 I        }
4 \& D) Z9 R- [  Q/ g) J- G4 {- d& l8 H7 I0 |) _& R; k% p
        public void agentStep() {6 M8 ]' b* Q; _2 \  w/ x
                System.out.println(id + ":" + Globals.env.getCurrentTime());( Q# V" G: h! Z8 l3 C8 D: z  ^) G
        }
4 s  h* S" G, h1 Y& K1 ?* ]; l}
% L) r9 g8 z& o- ?, p
3 E8 m5 [* u( c1 R6 L  xpublic class ActionGroupDemo extends SwarmImpl {
" t7 ~' L, j$ x( G: r' _* E- @        ScheduleImpl schedule;. T' x7 A& e' A* y1 V; r
        ActionGroupImpl actionGroup;
  i# H3 ^- e) k0 v0 C; c: u7 x        ListImpl list;
0 l  S" ^5 o: ^. u" m        char Id = 'a';
$ c6 T& ~, H4 z$ E1 A
- w9 i& |  `8 F) p        ActionGroupDemo(Zone aZone) {- h5 V2 D+ S2 H* X' Q1 u
                super(aZone);; L  c. F% c9 ~- s8 B6 {+ I% q- S
                list = new ListImpl(aZone);" Z1 [& p/ p. e- |) h0 D7 |
                swarmSetp();& ?$ Q! K8 t7 F* y# C4 `
                actionGroup = new ActionGroupImpl(aZone);! k7 P; m+ X+ x/ |
                schedule = new ScheduleImpl(aZone);
( j3 ]% k) q, Q. |                try {7 s" q0 z$ M" O8 v* c- ^% P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  z2 W: K$ k7 ^8 N                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 K% v- t! t' q9 m6 ?& o& T
                        
/ m5 @/ f" M- k' ^* l- P4 N# S                        actionGroup.createActionForEach$message(list, agentSel);
" w6 b, z4 N' s, z                        actionGroup.createActionTo$message(this, swarmSel);
: `' q" b, l$ ^# i                        schedule.at$createAction(0, actionGroup);
! @& ?  Y# H. N4 f5 A, i; q# `, g; M                        schedule.at$createAction(1, actionGroup);+ R" A/ I; Y/ g# H$ q: W) Q" y1 C$ k
                        schedule.at$createAction(2, actionGroup);. Y* y, t# d, {* ?5 d
1 t- R) A& }" W$ T- o% c) O
                } catch (Exception e) {
/ D' Z- i9 q- o4 ?& T                        e.printStackTrace(System.err);
' r8 r" ~* F' G! b1 S, P                        //System.out.println(e);! ?0 c; C* A: |  c  z* H6 Y' P
                        System.exit(1);
! ^2 d4 [. ?5 l: `" u2 E                }" {" B! U0 s( o8 {
* R1 l. D; S- n6 X. N+ D. g

. n/ o4 @1 k# s3 c        }
3 O* B" n  R, Z2 B# W2 j9 S* x" ^7 D/ X+ Z; c$ Z/ T2 x
        private void swarmSetp() {
- r( u1 g1 R  z- D9 h' B* p                list.addLast(new Agent(Id));
' h( y* u# _  K1 Q                Id++;
7 w/ s$ y: [' E) F( u6 n6 G8 j- `        }" N- ?5 ]* ~; I* r$ B( h

2 x. U' g3 @% ^9 {  c' X0 D# o; g        public Activity activateIn(Swarm context) {
; M% M* F1 e  [- p1 S* n# R                super.activateIn(context);! n$ e. a8 z3 w) F" {0 N3 C
                schedule.activateIn(this);+ M6 ^& }! K/ P% C$ V: A
                return getActivity();5 `# `. i  s5 [. [1 [* l  \
        }% ~4 n0 @3 X; X" \9 @2 E
* a0 G$ r. i1 x$ F. L3 {% ]( [
        public static void main(String[] args) {
5 W! E5 {( @. x: ^* t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 k) f7 k) M0 P* a                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 e6 x7 d$ x" ~3 j: V                swarms.buildObjects();4 w  p1 Z% s- m6 c3 g) k2 C% I
                swarms.buildActions();
3 w7 T0 p5 V: w  k- X                swarms.activateIn(null).run();2 l- P3 l; v( k0 z7 q% A% h$ T
        }
) {* B( C3 ^7 Z* {+ a; @
( J" Q' F1 e2 F" ]! z  ]: G}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-14 08:03 , Processed in 0.016852 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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