设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8964|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; q3 `; s8 p! S5 A9 S* @8 M+ y

8 L0 _- S9 R, Z: i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- m2 u0 `* [+ v  N4 [: n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% D, O. d* g) e9 }3 cswarm.SignatureNotFoundException
" e1 K( V0 f7 N  o        at swarm.Selector.<init>(Selector.java:76)
4 l' E5 _" z5 M- `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! R# ^; h2 \1 g1 O
        at ActionGroupDemo.main(ActionGroupDemo.java:67): H! o/ q4 \  }

2 U2 `9 E7 V7 U9 i
: b  v. l+ K( Y# C- limport swarm.objectbase.SwarmImpl;
1 X( t) r. D4 Aimport swarm.objectbase.Swarm;
# T! S$ y0 c  n5 f: Zimport swarm.activity.ScheduleImpl;
% b: r: a" c% O! U3 R3 G- H+ vimport swarm.activity.Activity;
+ o. D' l) g  ]0 P' Y; Mimport swarm.activity.ActionGroupImpl;6 g% z8 B& ^3 L" u( E" R, z0 g
import swarm.collections.ListImpl;- ]/ d8 Q+ K$ O' k: B4 h+ a
import swarm.defobj.Zone; 0 v+ [- I) I" u6 s, ~
import swarm.Globals;
% m$ k9 m) t# R8 p7 `, W* timport swarm.Selector;" y  \2 [7 ?8 K" r
import swarm.activity.ActionGroup; ! J8 u" P, b) U2 z- T! \
class Agent {
$ v3 @7 `3 ~. P6 K( f5 H        char id;& W, S3 {% o& o1 N
5 m3 u7 L8 h" w% E
        Agent(char id) {
  z8 s. z! i0 {* _$ n, _, D, L* C                this.id = id;: w$ r/ M8 z$ e3 G5 J
        }: I" K% b$ ]- N) w0 C, t
' D6 A9 H/ q% l* [" k
        public void agentStep() {
; y* u( d- h( ]6 k  C                System.out.println(id + ":" + Globals.env.getCurrentTime());' q7 M5 y( `, }% G" F2 C" q1 L4 R
        }/ a2 s/ O+ A( a; x
}
( G" s3 W" B- S7 E- H6 V( Z& U- R! R2 \+ ^! A9 [
public class ActionGroupDemo extends SwarmImpl {8 L9 V" j# U$ d& _$ X
        ScheduleImpl schedule;
$ G# d& C5 Z- k( q. h6 n* P        ActionGroupImpl actionGroup;( x8 H! N2 ?% u) v  ]
        ListImpl list;6 `. ^$ J$ x& K5 n, C, W/ w
        char Id = 'a';9 q- X' ~" o" v: o" x7 @& L9 w$ I; h6 [
1 e$ ~# I1 X' a0 C, g- `
        ActionGroupDemo(Zone aZone) {, F9 ~! F. ?2 k0 Y
                super(aZone);
: X' w! A* ]6 u) ^                list = new ListImpl(aZone);+ R* |# P5 T4 _
                swarmSetp();+ O+ k# K* P% A2 H* j8 T% M& o
                actionGroup = new ActionGroupImpl(aZone);$ |! y+ q! W  w& I1 S4 e' Z
                schedule = new ScheduleImpl(aZone);
1 U2 i4 R8 ^' [. k/ ]1 j, ]                try {
; B! ?' {7 I: a$ g- y0 _$ f8 Z+ ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; c9 R( T; Y5 K7 @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 ?" I! m8 _2 S. D$ y1 }
                        
  k$ a* i5 S6 F& ~4 t                        actionGroup.createActionForEach$message(list, agentSel);
" f' r$ x- z% x! C8 G                        actionGroup.createActionTo$message(this, swarmSel);# \5 b5 v5 y, f/ l. H
                        schedule.at$createAction(0, actionGroup);* w. y1 K8 W" m% }' b5 ^: Z
                        schedule.at$createAction(1, actionGroup);
0 v+ W# _8 C/ K! p                        schedule.at$createAction(2, actionGroup);) A( P$ I! h0 [) H3 Q
: G% o5 s% O# k) ?9 l; f
                } catch (Exception e) {3 s) K% s# u  I9 K1 d
                        e.printStackTrace(System.err);
$ K! A. }: O) n) C                        //System.out.println(e);) q) u$ X% W+ w- u9 [) y5 D
                        System.exit(1);
/ Y3 u8 w2 n5 |! z8 v6 G                }
- h. g( d9 ~- R/ Z- U$ z& q
7 }( f' E0 L4 T' B. K* l: t
( c* t8 q7 V0 I. n        }7 H2 i0 c! K6 N' n  j
" E( f. i% s4 p8 i
        private void swarmSetp() {) g# y3 x) ^5 \8 M7 D( V
                list.addLast(new Agent(Id));' x8 Q  f) C* q: c( W6 C
                Id++;9 [, V& g. d* h+ S# V
        }  O  g7 y2 B4 X6 _8 G( ~) m: S/ m
5 \% e5 X+ e5 D1 X; |% j
        public Activity activateIn(Swarm context) {
4 D# Q+ a) B. o* ?- E/ b7 y                super.activateIn(context);
7 z: a3 I' s1 ^. k# N+ e                schedule.activateIn(this);' J' k0 {# y5 E- D; L3 I$ a
                return getActivity();3 z; S4 b8 ]3 ]  ^* o, I
        }: F+ y5 W3 R) g) j

* T6 ^5 z. h8 o& B& Z/ g7 n        public static void main(String[] args) {* z4 B* [* `+ V' Z& y
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 [* W' \7 M/ D- Y9 f6 ^; W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# \3 D/ K" ~& ]5 p; C7 f
                swarms.buildObjects();
8 N! {9 D# K6 _5 p) I! k& P                swarms.buildActions();
; A+ u" i$ K  l/ J6 w                swarms.activateIn(null).run();
" i* d2 i  h* i/ b  x; g/ |        }/ Z4 G& v1 i/ Q

- ^) Q) R: ~" m4 r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-28 01:30 , Processed in 0.016414 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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