设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10672|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- D6 t- A7 ~2 K+ ]2 U
0 d& T9 S0 g- c7 U* U* F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' f" u5 g6 D. Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: i5 o0 ], A# B! I+ n0 nswarm.SignatureNotFoundException
* R+ ~8 {' X2 ^' l6 x% t        at swarm.Selector.<init>(Selector.java:76)* T2 c- G/ X& I9 P! k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) \# X( n$ ?+ V9 m. Z4 U+ d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 V6 j5 T6 W9 n! F+ w  z) T; w9 y8 r# Q% ]

2 b" L1 H+ i3 ]import swarm.objectbase.SwarmImpl;
7 F9 }4 U. B4 Pimport swarm.objectbase.Swarm;
1 ^1 L6 F6 M- p, u7 h: yimport swarm.activity.ScheduleImpl;0 Q3 |7 U2 E4 {) g8 {- T
import swarm.activity.Activity;' E8 R# o% c3 @; o( ^2 G
import swarm.activity.ActionGroupImpl;
* u9 K9 t' s" c$ W# D8 a7 Eimport swarm.collections.ListImpl;
9 y$ \' S( o& L; u" c) ^import swarm.defobj.Zone;
' D3 W$ R, j2 Z. iimport swarm.Globals;
' q4 H$ q3 V# k* ?' Jimport swarm.Selector;
' Q* x; N& l" iimport swarm.activity.ActionGroup; % M# J! e& h' H4 T' C
class Agent {
% O; f. d0 E9 x        char id;5 Q5 A) d) M* n! s

% y4 S7 H$ U6 E; E, t9 Y        Agent(char id) {9 c' ~  U* M$ J5 _
                this.id = id;9 I+ q7 w$ x; d, j9 i' w6 o
        }
: R1 Y0 K' t, y+ Z6 o/ o& T
+ Z. G1 |: Z# H5 {1 Y, V        public void agentStep() {
9 _" R- w0 R5 ~2 ]9 q                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 Y/ K, k0 o; w9 P' M8 Z; U        }
% p" t/ j" y9 D/ O+ K* r2 y8 `}$ r  q( v- w, M) S/ n% m
; Y) a2 K: |) i4 K. j( m7 g' c1 R
public class ActionGroupDemo extends SwarmImpl {7 q9 i/ |3 q) _& \2 q! T
        ScheduleImpl schedule;
" h2 U, x8 l. W8 d* B        ActionGroupImpl actionGroup;5 K& ?9 g% C  y  v
        ListImpl list;
9 N7 J, O5 m4 A# n        char Id = 'a';4 \. j, V4 V) N* |0 D3 U1 l% r
7 P# D) i' U% O: f
        ActionGroupDemo(Zone aZone) {+ _8 Q9 H$ J+ i1 I* S) P- w" f, x
                super(aZone);
0 ^+ [& S- P7 ~) L1 R                list = new ListImpl(aZone);6 U' V" @) I. l. _
                swarmSetp();/ Y, J; l& ?, E+ S- r( A) S1 ~
                actionGroup = new ActionGroupImpl(aZone);5 q) r' f# Z; }8 n: |$ Z( O
                schedule = new ScheduleImpl(aZone);: s) ], ~; k0 V
                try {' H8 V/ Q$ |, j8 Q% a: v! |4 k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 }! m5 E' Q5 d& k8 J  ~
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, J; o" t8 \% X2 C+ G+ B
                        6 K2 i5 ~/ M: |) k2 Z" |
                        actionGroup.createActionForEach$message(list, agentSel);! z  l9 u# p; \' q6 J
                        actionGroup.createActionTo$message(this, swarmSel);  H9 c) O# i" C- h$ |, {0 e
                        schedule.at$createAction(0, actionGroup);
  w: y' V1 j4 L                        schedule.at$createAction(1, actionGroup);! K8 i+ z* V% _7 `9 H, V- H" n
                        schedule.at$createAction(2, actionGroup);
( u, F  B: |4 `: \& i* c: N; W8 F: q4 m' s$ B2 z+ T
                } catch (Exception e) {
9 E' u$ T; |/ M- v                        e.printStackTrace(System.err);
, @, X. r; Q$ ~0 f! s4 [                        //System.out.println(e);
8 Q1 n2 F  A- A4 H6 [                        System.exit(1);
' |4 y7 L! F7 d4 J" M* B                }
# `! B- y) R" F2 b0 ~" h2 K+ \3 k8 R- p7 }

& Q, y& J- ~8 C' n        }- K' H# ]6 ?7 D# j7 O8 }
) B# }; c& h, s" t0 S
        private void swarmSetp() {
3 n+ \! v, D- S% e8 r; j; i                list.addLast(new Agent(Id));
' l1 `* b+ p  Q  D: h                Id++;/ p3 z: B3 \& G7 w9 c1 T
        }
8 `; B$ k. W, r* h1 K( f% `3 L2 r7 E* E$ _
        public Activity activateIn(Swarm context) {  Y3 a9 [# f/ w* i, I+ z5 h* t5 z
                super.activateIn(context);: m; Y, I- X: u3 l
                schedule.activateIn(this);
8 c% i. ~! ~5 ^3 I( r  w6 Y4 x                return getActivity();
, a% n! T  M; M8 N3 a/ \1 l        }
( z# @% f% R$ ?
; R/ V; r8 ^+ v" k; u, B2 L, H        public static void main(String[] args) {- N, |$ `7 C8 B2 q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 p3 h: B. Z6 s7 p& B3 Y  `; E
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. p6 M5 _8 k- B2 E* K                swarms.buildObjects();
9 h0 O' g1 b; {' `                swarms.buildActions();
# v$ v# _  G1 t+ X/ |/ {                swarms.activateIn(null).run();
; z& Z6 R) g! a; `        }8 K" D; z& B- z) f7 H1 M  J
5 q6 V% p  z0 N- i; X1 b3 w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-20 06:53 , Processed in 0.016970 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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