设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9328|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 s. {6 O6 b) N- M
* b# b* W4 c0 t6 R( Y7 T; R" c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 W) w2 L7 Q0 V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  a' N. [  W; S8 F+ R6 [/ l) c: i
swarm.SignatureNotFoundException
# p5 u$ M( ?4 H. b  l* i  K        at swarm.Selector.<init>(Selector.java:76)
% f' ^, Z+ |5 A+ d1 T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- w2 x4 l; N/ o# n4 {/ L        at ActionGroupDemo.main(ActionGroupDemo.java:67), k  C" W" @- X3 t6 p
& r* l5 j  K" y9 M! n
' H( S; d1 f7 t6 V9 l( g* V& ?% G  N) j5 o
import swarm.objectbase.SwarmImpl;  A+ b# W- w$ \$ V0 R) g5 ^. L
import swarm.objectbase.Swarm;2 a7 t: M5 h. N9 ?5 B0 i! X
import swarm.activity.ScheduleImpl;
" M/ _8 W5 E" h! u0 I1 V& c9 Limport swarm.activity.Activity;$ ]2 X. r- Z1 ^  c0 |/ V/ O
import swarm.activity.ActionGroupImpl;& |9 {2 a7 D6 F6 u1 V. q( ?
import swarm.collections.ListImpl;
+ W9 H& S8 B+ T: Zimport swarm.defobj.Zone; & F7 F( v' R5 e7 J/ A8 U: s$ F
import swarm.Globals;
: X7 T. @' W. ^+ n6 U5 uimport swarm.Selector;: Y% T& u0 V" }: P# E4 R
import swarm.activity.ActionGroup; 6 O* V* h, B: d4 \! k: R& t$ |, A$ M
class Agent {
9 S; D9 C$ z5 X9 x        char id;1 ~) m" v8 y8 _

5 H' T5 r$ {' \        Agent(char id) {
* g5 ^. I0 H1 q: x, O+ _) X  s                this.id = id;/ e# S0 a0 M8 q" c0 O- d/ s% V  d
        }
( Q! X7 ^. p. |) V; v% {  R: E, L$ p2 A8 m+ S2 m
        public void agentStep() {( e: o- \5 u" ]
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 v/ i  h" s6 h1 O3 ]
        }& k3 f$ ]1 r% c& {
}
) Y5 A$ u  a) `7 n2 J: O' x: X* N3 {# \
public class ActionGroupDemo extends SwarmImpl {
& d6 A8 [) K; s* W6 i, X        ScheduleImpl schedule;1 s" l! M  ]) V6 |' |4 w9 S6 ^
        ActionGroupImpl actionGroup;
# R$ {8 i0 F2 @        ListImpl list;
4 U2 W. u$ f+ ]        char Id = 'a';
4 n. e+ y, n' ?( Q" {
3 a" Z/ W( M5 z9 ]/ R. ~$ J        ActionGroupDemo(Zone aZone) {9 [- L4 h. G+ a; g
                super(aZone);
* X( V) w' `# Z, q; I0 `! P                list = new ListImpl(aZone);
  M' C- n" j# F. C% [1 ^# _) H                swarmSetp();: ~; m7 E% C0 r4 |
                actionGroup = new ActionGroupImpl(aZone);
# e7 e8 p6 L6 D) P; P# D5 x+ _                schedule = new ScheduleImpl(aZone);! u/ B7 m6 \; Z; {
                try {
4 T: W$ T* _) `) V2 y. d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 a" Y/ m  ~4 }1 m7 X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, m9 {* |$ f! x- l- h2 m+ J& z+ r                        
6 j! ^9 R9 i% J) x                        actionGroup.createActionForEach$message(list, agentSel);
+ s* O2 E; e" Q9 Q                        actionGroup.createActionTo$message(this, swarmSel);
. T9 L9 O1 M2 `; z3 B% d8 W                        schedule.at$createAction(0, actionGroup);& `( s1 z) o- j- \' T" }
                        schedule.at$createAction(1, actionGroup);5 k6 `/ p1 G# ~2 b
                        schedule.at$createAction(2, actionGroup);
1 v2 y% ^& h9 Y& T" a; i6 h* Z) N: b3 y! J2 b
                } catch (Exception e) {2 U" H' }% B' e8 b
                        e.printStackTrace(System.err);
, l0 g) A. ]2 M5 j& s# P                        //System.out.println(e);7 g- O2 Q1 O4 @  \- f; u
                        System.exit(1);9 w0 \& ]2 ^' C3 h% T
                }  D/ T3 Q% [7 n& Z9 f
$ @. Y: O$ I' J

& Q( Y' b9 K3 ~. z        }+ f% J& \7 g7 e
& E4 Y3 n( K' n  i/ _. |
        private void swarmSetp() {
( s4 P' R" r) C' _: A/ X                list.addLast(new Agent(Id));7 h- V) L  j- v* [: W& p# J4 c
                Id++;; \) M7 L6 O% T( E. ~
        }
/ g+ g: M- [8 U) V- ?: ?9 d6 O' u* G  Z
        public Activity activateIn(Swarm context) {
8 {- w& Q! W9 z/ K+ C                super.activateIn(context);
4 |, \) }8 C7 B- p6 N. q' M3 r                schedule.activateIn(this);
; N& q) C* i9 k; w                return getActivity();
2 q! H8 Z# n! `        }
5 V/ \9 @+ l% D) ?: u; u) K& X- J. O* n3 v
        public static void main(String[] args) {
! o) o* w  h  _0 n6 A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ e/ c+ p1 S( m/ `. W* q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; u" N/ \6 @/ ~$ n0 @                swarms.buildObjects();
2 d- h% a3 A7 o/ L                swarms.buildActions();
2 X2 c9 z( Z& p& ?. ?2 |/ R# g                swarms.activateIn(null).run();& R' P7 _. W! W7 g9 d! i) P
        }
  s8 m- b$ \4 ^/ A- ^; \3 j/ ^. v) i) F9 {; ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-8 18:01 , Processed in 0.016498 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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