设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9495|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 l( w4 ~# _, p9 l( j3 S
7 D# H, n; o7 K  L7 V7 Q! w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ [% A* {2 L  s) O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 q/ ^/ }. }- @2 _/ C- j
swarm.SignatureNotFoundException( O4 x, F: O9 ^) {  X  |! G2 u/ M
        at swarm.Selector.<init>(Selector.java:76)% M$ b: p7 ]. T4 Q6 T: N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: \8 w, S8 t2 K2 o4 _7 U        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 c& W& y. G: u* y0 d, X) ]; @$ N6 H2 s" k* o( f) Q, t/ d
" P1 c: o- G: p8 P2 ]1 u2 W
import swarm.objectbase.SwarmImpl;/ ?) \+ y9 T; i, }, W) Z
import swarm.objectbase.Swarm;
+ Y3 j/ Q/ N  a- W# aimport swarm.activity.ScheduleImpl;
5 }+ N4 \9 S0 K1 Z# Aimport swarm.activity.Activity;
  }* j5 s& I) vimport swarm.activity.ActionGroupImpl;( q& ?, c/ E' _- a/ r* @
import swarm.collections.ListImpl;
) A! F, l2 c6 Z5 K$ m0 T* i) p( @import swarm.defobj.Zone;
' p' o/ y" ~6 ]1 e( d, }! ^* Gimport swarm.Globals;0 E, [1 V* L% r" R% a
import swarm.Selector;
" X& g( v5 ^- A% \; p" ^6 n' E' C9 Limport swarm.activity.ActionGroup;
( _8 }# b+ C) `# @" K' S# X2 cclass Agent {' B! B. v) L  j
        char id;& E& J% c) M; k$ A; ?2 ^2 ?% }' E1 M

+ Y  R, ?5 {1 y8 B" r        Agent(char id) {
7 v  v  q0 h! p. |0 U# S, K8 H$ X6 s; s                this.id = id;( ^( C2 Q+ G5 m1 A; l
        }
# w5 G0 a: A7 Y7 |5 \
+ Z# Y5 I/ f, z        public void agentStep() {2 J0 E1 q9 W  Y5 C+ i# O) l+ H0 J8 y
                System.out.println(id + ":" + Globals.env.getCurrentTime());4 \. J7 x6 b0 t
        }7 h) A5 x! n1 L8 ?3 E* c
}
8 y3 O! B2 D9 L: n* [% X9 Y4 ]! b: R5 s
public class ActionGroupDemo extends SwarmImpl {
$ j/ W# C6 o4 b8 R- N        ScheduleImpl schedule;
- A* U9 h5 R+ B4 i' q2 J7 q        ActionGroupImpl actionGroup;
& A4 P3 I/ m. g0 N        ListImpl list;- N6 r7 h1 I3 h/ X4 }6 H
        char Id = 'a';# X- H; i( h/ o

" K$ u' L5 i! W8 R        ActionGroupDemo(Zone aZone) {
; O: ]# ~. P& l. r" w. L$ V6 ^3 r                super(aZone);' k2 z7 d* Y* ?  f$ k
                list = new ListImpl(aZone);* J/ c, ?5 Q* p' v9 B/ [6 F
                swarmSetp();( B& l, T- b3 Q6 Z
                actionGroup = new ActionGroupImpl(aZone);! m/ t# c$ k' Y' Q" v
                schedule = new ScheduleImpl(aZone);! v5 W; d: ?# [  d/ L
                try {
1 U; ]. I( n# O1 S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* @1 {& W; P* K3 b; v2 h' G; r- c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& Y$ }( u& V; o; P* _2 _+ N4 l                        
! _* O; [( P; Z/ ^  ^1 D                        actionGroup.createActionForEach$message(list, agentSel);
$ }# @; y0 @+ Z- C0 @                        actionGroup.createActionTo$message(this, swarmSel);/ O+ w5 S5 a) ~' f$ O5 X
                        schedule.at$createAction(0, actionGroup);
/ j# f- H" q/ y) G                        schedule.at$createAction(1, actionGroup);
% W4 R. F% {% J# ~                        schedule.at$createAction(2, actionGroup);, s5 G$ K( ?$ X# ?0 ]' i
8 I& a& U' V3 ^0 ]
                } catch (Exception e) {$ m. p1 @8 }! c& K$ o1 Q
                        e.printStackTrace(System.err);- P2 t/ G& q* L9 [
                        //System.out.println(e);6 z6 E6 n" ^$ U5 [/ E
                        System.exit(1);1 `* U. x  z: o
                }0 U# h  d) w/ ]# H: m8 U& a

7 M* O  J( `! e' `& K
6 g3 ]/ ]( v* w8 c        }
+ o* }0 J3 t/ t7 F" e3 s" x0 d* C! R, f8 D
        private void swarmSetp() {# h4 i/ ]# D5 y; F# Z6 {' ~) u
                list.addLast(new Agent(Id));
/ A1 i- J' E4 }# Z& H7 t                Id++;
! J% D: Y5 [1 T, C        }
7 {. E; i( L9 U$ w( x" c3 d# y6 N# z3 A
! ^9 C# K; N& M$ m1 I5 S0 w        public Activity activateIn(Swarm context) {  e# z  t0 R0 [& S0 O4 r4 `
                super.activateIn(context);
1 I! {5 F# J/ p' s0 k                schedule.activateIn(this);' U- T9 c5 m* j9 s9 [
                return getActivity();/ h2 c+ m! W8 P6 G4 L$ i) T
        }1 C7 b; Y3 Q$ c; h, H

; y8 ]0 K7 x9 ]        public static void main(String[] args) {
4 p6 `- n) d7 N0 |, X3 v; b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 i, |/ Z5 E5 ~, q$ I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, L4 H4 Q  _2 N) @                swarms.buildObjects();
. q3 n1 v; J. p7 u4 u                swarms.buildActions();
5 ]! a9 i/ _5 t' R. f                swarms.activateIn(null).run();" Y2 E4 G; k% C& d; E: L5 J) g
        }
2 z. a9 n) |- U  E- y0 H/ x2 L* t9 s, P1 M0 `$ W4 m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 01:20 , Processed in 0.017411 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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