设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11971|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# w+ k* `- V; y2 i, ]. w; @) J" w! N* M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. P: K0 o% ^, g6 T- y, P' z  _$ o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# x2 c( l$ P& @swarm.SignatureNotFoundException/ T5 S  U7 [# M
        at swarm.Selector.<init>(Selector.java:76)
+ \$ M* w/ m& A& B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 q  b# X2 C/ I  R        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ d1 U, d% N8 A

& H: y/ A. X. v3 j
6 K: M2 z+ L; B& J3 I: E3 fimport swarm.objectbase.SwarmImpl;8 F' ^& Y- s0 g1 v7 z. p; F  g
import swarm.objectbase.Swarm;7 n; q! I9 I' f
import swarm.activity.ScheduleImpl;' O( @$ A. `3 x
import swarm.activity.Activity;
. }) D3 b: p8 f- L* Simport swarm.activity.ActionGroupImpl;8 D6 g+ W" G4 X4 L/ _
import swarm.collections.ListImpl;, M- P6 M, m( W3 l  x
import swarm.defobj.Zone; 4 r7 \7 w, |9 E- {, p4 w; F
import swarm.Globals;
# q; N% `  }' X* Z& K' ?import swarm.Selector;5 R3 k" x+ y+ ]+ N
import swarm.activity.ActionGroup;
1 p3 S7 K! Z4 M* i5 rclass Agent {
- h* v: P. m+ D        char id;' _, ^3 o; L* }" ~0 e& g4 V

8 t$ y$ R' ?+ U$ V' X4 ?) D' [        Agent(char id) {
; C9 ^6 S2 A' y1 s4 N                this.id = id;
3 L. s/ C3 }, q        }
  f+ Q3 l  w/ u' }7 Y$ {1 O& T" s# T
        public void agentStep() {
5 c8 \6 D- F: }4 F/ P2 |5 q                System.out.println(id + ":" + Globals.env.getCurrentTime());# d* R, E; x: `
        }6 M( }! I4 e/ K) H( e, V! B* J
}
; \; M, a/ o' H: N3 G" ?- G2 z4 y( j# b- d" S# ?
public class ActionGroupDemo extends SwarmImpl {
" u/ _  w1 m  `$ {        ScheduleImpl schedule;! c, y" W. U( \& F* m
        ActionGroupImpl actionGroup;, A) b+ v9 @* P' O0 ], z% H) L3 ?2 t+ U) F
        ListImpl list;( G, ?$ c" @6 }; B2 F
        char Id = 'a';
2 N6 x: t. F- c0 m& i  L' o( Q0 X$ n  t* o5 @, }7 `) d
        ActionGroupDemo(Zone aZone) {
; M; m1 P% a( K$ L! B" X# s                super(aZone);1 [* p% n4 {% c( W; t5 r+ c
                list = new ListImpl(aZone);- a1 C# ^# L) N  [) y: M7 L
                swarmSetp();
  ]0 k8 [/ O9 Q: c& Y4 I                actionGroup = new ActionGroupImpl(aZone);* s# G5 T$ `1 ~0 b5 `
                schedule = new ScheduleImpl(aZone);
$ ]( k# ]. O* l$ I& T                try {
6 l& A4 I& U$ V; `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 F% |( g# y) P; k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 A" L. [9 m; f                        
7 T( P0 s5 I7 B* _3 Z0 k9 `6 s6 h                        actionGroup.createActionForEach$message(list, agentSel);
/ g% c; c+ h6 a                        actionGroup.createActionTo$message(this, swarmSel);) }, X1 l6 k' q" d$ b2 O+ V
                        schedule.at$createAction(0, actionGroup);/ `1 |7 J- E5 s- G, _4 i
                        schedule.at$createAction(1, actionGroup);
9 ?* O" N3 b7 W' L( ]                        schedule.at$createAction(2, actionGroup);  X  u" b, ]. e' ]' t; I

; W9 u1 ~& Q7 c/ r. J+ P) C                } catch (Exception e) {/ h8 W; q1 V3 }* X+ H! L9 K, V
                        e.printStackTrace(System.err);8 I8 V& {" T0 l/ }# m
                        //System.out.println(e);
' Z5 S/ J( z& d- @, z( s- `                        System.exit(1);( E6 I! y7 F$ S
                }+ w/ v) m: I0 D4 p6 X

" ?1 p8 ~: B; r' g# z- Q0 b1 p3 u6 z% i# O8 H: Z9 f% |
        }% W4 X4 ]! r( p, ^! K' h: ?' M: w
% R/ v/ B+ z, S+ c- Z( B- l
        private void swarmSetp() {, o8 d" w& k' h% \; S3 b
                list.addLast(new Agent(Id));
3 K* v* Q& @' k9 h5 Z                Id++;
' L8 a, q2 K& q' g+ B8 s! I1 ~, j        }
9 B$ K6 G" }1 s% K6 g0 [% ^, u8 W* L7 G
        public Activity activateIn(Swarm context) {2 T# u! `' b0 Q8 D& @7 H
                super.activateIn(context);
8 U4 |5 |- ]1 q& n$ I) E                schedule.activateIn(this);
( m, }! j7 @9 ~+ W# S8 g                return getActivity();
5 _8 r6 N+ e. ~% _6 G) ^        }
% m' s( M* o7 v
* V+ b6 C- d9 }" |2 R3 V$ H+ v        public static void main(String[] args) {& u, {- [: ?# q2 k6 `' B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  ^; v0 }3 A- ~3 h% T: e1 L! z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 c) T9 `9 B/ z7 m- i6 p8 ?$ v* n' |                swarms.buildObjects();& Q& o% q8 b: k0 k
                swarms.buildActions();
. _4 c0 a# D# i- f  ?* k0 Z, l                swarms.activateIn(null).run();3 D; d# @3 d! }/ z5 i: h
        }! \% d7 j1 w0 r  B% i
, R8 B' j" G) Z- R+ K( ]% H
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-27 03:23 , Processed in 0.015049 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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