设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12675|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ }- _3 s" k+ A9 {! K+ i; q' V: n- h" N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 \- h' U3 B$ V. Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 y' v0 K3 N. |
swarm.SignatureNotFoundException
* Q4 g& c% [! v' X$ O4 |+ Z        at swarm.Selector.<init>(Selector.java:76)5 L. q2 s3 I2 s3 z" i0 b  j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) J4 c' m1 o8 f        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 g- o: {( ~7 o( G3 c

. f2 j- `" ]1 ^/ I. {. k7 _8 J4 D9 y8 W
import swarm.objectbase.SwarmImpl;/ B& g& X! u$ Z9 e$ d! F
import swarm.objectbase.Swarm;
! Y% g, M5 p7 ^! I; Eimport swarm.activity.ScheduleImpl;
' P! l6 m: A! t5 U, L/ {import swarm.activity.Activity;
( _" g7 j( F3 r/ P# v! Bimport swarm.activity.ActionGroupImpl;
$ ~8 |  n# [5 t  b% V5 Kimport swarm.collections.ListImpl;
* l" ~" W% I+ \# Yimport swarm.defobj.Zone; " l' ~- O1 `$ g! D( }" n% O
import swarm.Globals;
0 k* ?, R: t' V) D9 Z) H% Dimport swarm.Selector;
0 O" O# D4 G/ l" _; Vimport swarm.activity.ActionGroup; $ n# k- \% s6 T
class Agent {' e# t& m# R/ L+ N0 Z
        char id;- ?5 S2 }4 |3 g( R% T" q

4 Y3 O8 P# x6 k# Y4 j* _& n        Agent(char id) {, _& }, }5 `  x/ D5 e3 u+ v
                this.id = id;
# v$ N" M& q/ c! p  D, X        }. n3 T1 k* I0 K4 e

  Y5 M1 g; M+ T) g        public void agentStep() {$ z- Z$ q1 q. ^9 [
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 ?9 I5 S! i! k/ M
        }4 Y- {- ~1 [* i9 y
}+ ^5 |! L% C+ F/ }% V
8 N# `  D9 P6 Q2 E* q0 `' d5 Y! R
public class ActionGroupDemo extends SwarmImpl {
6 }6 ?7 X, Y! I4 m) t        ScheduleImpl schedule;
; z7 W) b5 i1 F- s: l$ \" p        ActionGroupImpl actionGroup;
( w0 y+ u6 j* B6 g1 S. R        ListImpl list;
  F: R0 W  j- x& ]$ c+ `/ t        char Id = 'a';
1 c- {2 ^8 o" {' O, d2 `7 t3 w/ |2 K" z# i
        ActionGroupDemo(Zone aZone) {' ~7 G4 l9 K4 G) ^$ |- I) x( A
                super(aZone);) S/ T& j; g+ n! {$ d
                list = new ListImpl(aZone);
$ {# }% r$ Q: v                swarmSetp();2 N: {& A9 F. u) l" V5 Y
                actionGroup = new ActionGroupImpl(aZone);- h# C6 U# f! ^( h2 d
                schedule = new ScheduleImpl(aZone);
& d5 u6 k5 i' v5 D' k                try {
$ {. X9 H, y; z& b' h( b; \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. l4 h+ ]( H/ L2 N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 g7 O6 r4 q: a& H. M
                        
/ X' Q4 e& M. t" l- D                        actionGroup.createActionForEach$message(list, agentSel);
/ [3 |% b0 n" h. l" F* x& k- F2 R                        actionGroup.createActionTo$message(this, swarmSel);  [' b5 B- @3 A) u. s
                        schedule.at$createAction(0, actionGroup);* y5 S( @8 M  e; R7 _
                        schedule.at$createAction(1, actionGroup);; p6 ^( }9 H& e/ ?, E
                        schedule.at$createAction(2, actionGroup);
( O3 w6 j* F( @- Z7 w# w
  U+ m* r" H% n2 @                } catch (Exception e) {
" K3 M7 V+ O5 s; V- Y                        e.printStackTrace(System.err);: U: B8 z7 ]; A7 [8 X
                        //System.out.println(e);, {* S" S" K2 s" _2 C
                        System.exit(1);
; z' I# O, ^: t; P                }4 _9 e1 F% u4 R7 n  {" U
" ]+ r) x+ z1 j# p) E

9 o" o; l- E- z5 D9 ?8 Y$ _        }9 o/ n* S5 e+ l

9 {) T0 \& @: ]0 k" w% a/ L9 p        private void swarmSetp() {
, O1 h/ A6 A7 j# B5 A                list.addLast(new Agent(Id));
' i# L1 {1 u( ~0 e2 g                Id++;
) [, b5 C# ]; n- k1 c# w( H        }+ Z6 b2 t. c4 T$ O1 j$ s# z" Y

5 M  G! o9 ?& W) z; A        public Activity activateIn(Swarm context) {
! G9 K! |' I. d7 Y: A% k) a                super.activateIn(context);
3 R" ]4 h& L- K- ]  {6 w- U                schedule.activateIn(this);; `) S! K' G# \  t
                return getActivity();
+ a& a/ e3 d3 z        }
  W4 @$ j( A- z9 W
8 h4 Z) }7 f2 k6 n        public static void main(String[] args) {1 D# b! m! k4 f) v' q  T
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; p3 j/ v- B# e7 [: }/ @4 I" P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ C* s4 n9 c" S/ t# o) h                swarms.buildObjects();/ W, p0 H7 I, Y3 ], d, e
                swarms.buildActions();0 a1 t$ s3 O0 M+ i% p1 s: z# l
                swarms.activateIn(null).run();
# B6 K/ ]' H" k% p) G& ~        }
5 U. q2 t1 P  |- q; t
  m1 P# @1 Y! S* O! L) g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-15 16:08 , Processed in 0.020601 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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