设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13858|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ u0 ]* \" i- l" n( G, U/ K1 D: c7 L" q2 U) F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' C  Y+ v! ^, q( ^* r8 P" e% N, f9 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  c+ {( {" {' @
swarm.SignatureNotFoundException, w; l7 c! c( B9 Q1 M* f% G( U
        at swarm.Selector.<init>(Selector.java:76)
% c4 H7 Q! ^2 ?' x; _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ M! e9 n+ }) |* g0 {9 C4 n1 N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' ~  X2 @! q7 O2 d% R+ z9 Z( n
" m% P- s, y) S3 w% _) B* {, t; Y$ l$ d- E- C  N8 {6 ?/ U6 ]
import swarm.objectbase.SwarmImpl;  c/ V; d2 R- G/ E5 Z1 y; {) P# m- N
import swarm.objectbase.Swarm;
1 A4 U4 E9 w: W; O" S  l% Qimport swarm.activity.ScheduleImpl;8 X- N9 M: i7 ^
import swarm.activity.Activity;
3 {! i( S/ }" T0 ^( m: X) F0 kimport swarm.activity.ActionGroupImpl;
  T! G! K4 s! ^  B  H0 Dimport swarm.collections.ListImpl;$ h; t" N) Q8 b2 ]( y% L* c
import swarm.defobj.Zone;
. C" b& y/ ~! Cimport swarm.Globals;3 d' ], b2 [$ Y6 z( q% w9 J
import swarm.Selector;
, a3 A8 I: W9 P$ y- }* fimport swarm.activity.ActionGroup; 9 |/ B: C) s7 x0 i; F$ K5 f4 p1 G4 k
class Agent {1 m- n" ?1 M" \7 Z8 c! d: ?9 Z/ q6 _
        char id;
! V7 K0 V. S4 L: \( l3 e4 e4 [) T# _
        Agent(char id) {" y6 s4 u; `5 v" ?( e1 G
                this.id = id;
+ k1 J3 L; R7 Z5 v% H# J& C        }
1 i0 H: X$ l& @. v# [" u* s& R5 X5 U$ r1 n9 u
        public void agentStep() {; i5 q9 X* x9 |) g$ J' y
                System.out.println(id + ":" + Globals.env.getCurrentTime());  x; }9 A9 s! r9 i! _
        }" l) @  c) g- f/ P$ @% W; J: \0 ~
}3 Q8 V0 m) ]# g, u

: c* o' L: E7 _; Z, \public class ActionGroupDemo extends SwarmImpl {; ?% d! l5 U9 ~( Q, r; `
        ScheduleImpl schedule;0 H/ d- o* c2 R% ~2 i# a
        ActionGroupImpl actionGroup;- T! l+ p9 f3 \1 g3 _0 i" C
        ListImpl list;
" `$ ?6 F! T$ ~( g% g% x# |; t        char Id = 'a';
' g% m& h, ^1 \& o7 S; L; F6 P# s$ l) \* f! c
        ActionGroupDemo(Zone aZone) {9 R8 O8 _( b, H* M8 u
                super(aZone);
+ [) t" a$ b! O0 d' s                list = new ListImpl(aZone);
. _. ~' g4 Z3 n# q4 q) q                swarmSetp();
; m5 g# t4 @  e  M; M                actionGroup = new ActionGroupImpl(aZone);: u3 F4 e* g- ?% Z6 E: F$ q. a
                schedule = new ScheduleImpl(aZone);
/ f' D6 Z$ _; m7 N& W                try {
5 A' L+ i8 ?: K4 D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 A$ x! Z8 [0 k/ z9 V9 Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  |7 E# D6 |0 s- Y; o
                        " ?" M! a. H. Y& {8 m
                        actionGroup.createActionForEach$message(list, agentSel);: i: m, x+ m" w3 Y/ A  D
                        actionGroup.createActionTo$message(this, swarmSel);' i) h' N% r3 K! r5 R
                        schedule.at$createAction(0, actionGroup);" Q5 _) k. U) i6 }; l7 Q3 g  e; J
                        schedule.at$createAction(1, actionGroup);5 I2 I: s) v( M- _/ p
                        schedule.at$createAction(2, actionGroup);
9 w" X' e% Z- g) ?  j$ y: M/ m* t1 m5 f3 {, w
                } catch (Exception e) {
0 i" C1 J8 C- C                        e.printStackTrace(System.err);6 \  R/ w0 @2 @- i+ c6 }9 M
                        //System.out.println(e);
" q1 A" ?6 E* w- _                        System.exit(1);( U5 b  z; }8 z
                }, N8 n6 F% ^" J; ]# U3 _

2 ]$ L+ ?; u- ~+ W8 a: V% c1 D, K) {6 l
        }% i/ P) u, |* G, P% `3 o
' `, s) j( v7 p8 ~# z9 l
        private void swarmSetp() {$ B/ D: U7 P( Z; ^* g& q
                list.addLast(new Agent(Id));
9 L6 @, |5 L1 f& I                Id++;
( W3 a+ _) C, z/ `, U; ]0 ^  `        }, E# A9 Q7 l! Z  F6 e1 C+ k% w
' Q* {# O( a& t& ^
        public Activity activateIn(Swarm context) {' z3 J8 v, L% R6 |0 F/ s
                super.activateIn(context);
  \- f# X3 f/ n6 d# F6 p                schedule.activateIn(this);4 Z3 i, J: B' p& E5 e( x+ [4 C
                return getActivity();
7 [/ a" c$ A1 U" X+ e5 ], B        }# n9 T4 b( w' p& B$ o, s

) d8 N- O; @7 Y' U) G        public static void main(String[] args) {7 G( W( ~7 H! U8 G
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' c# z6 M6 ]6 _) U* S# @0 T                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" q; Z% s- b* s9 p& Y/ \6 G
                swarms.buildObjects();
3 b1 Q9 h7 }& k1 ]' T                swarms.buildActions();
3 B$ `% W  r; j! s( l                swarms.activateIn(null).run();) ^2 t8 V: ?( L# }; D8 e( ?6 x# l" B
        }
' Z* R7 t. ^& J/ `- g( e& d- i( l; [: q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-19 22:23 , Processed in 0.014418 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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