设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13933|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ a7 B/ w' G. ~& L( X8 p6 ^0 H0 n" ^7 Y5 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 E) s! v  q6 ~+ S7 V9 h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 u5 y# B5 L; S1 ?8 {3 P
swarm.SignatureNotFoundException0 k0 I7 `, r  j1 u8 ?6 [+ |
        at swarm.Selector.<init>(Selector.java:76)
, _. |: r" T- R' J' [6 \4 j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 S7 U) R/ y/ K4 J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 ~" A: D: h! n. n, k; A
+ c% e0 ^0 c1 N6 \. j! q9 J$ Y! q1 F
4 w% h! q5 ]' S7 p8 B
import swarm.objectbase.SwarmImpl;3 k2 m$ c. b/ g( m  a# D0 ?
import swarm.objectbase.Swarm;$ c7 v% K: v" B& s
import swarm.activity.ScheduleImpl;
; @4 H$ `. w, j5 x4 U0 kimport swarm.activity.Activity;
* U1 o6 O) ^  R# G* Dimport swarm.activity.ActionGroupImpl;
# p/ U7 j+ f4 \+ X1 Q' v! rimport swarm.collections.ListImpl;
, _( g- d$ l6 Z9 W4 a+ }import swarm.defobj.Zone; ! r8 f) p  G% f; N2 d7 ?
import swarm.Globals;
( O; O, g* i! a' pimport swarm.Selector;; }$ {# W7 i6 |
import swarm.activity.ActionGroup; 3 K$ m) y8 L3 m2 F
class Agent {
# B9 D/ a# M% E$ `        char id;
. j. g1 L/ y: H& A
* o% D' l: A* p  r/ w        Agent(char id) {8 [6 P7 D9 U; y9 {5 [
                this.id = id;2 X' c/ f: z4 a3 u5 U0 G
        }1 B# _6 r- P$ T' s  [6 A3 }
: T* g6 r: z$ M% z
        public void agentStep() {# d& y0 b# E, ~3 F
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 i- ]1 _7 `/ }1 H0 M        }
. B. \2 W  E- N: H" W}
; Z3 O* O6 z! S1 R# Q) I& g: e9 y: t
. ]" G  M) H0 Xpublic class ActionGroupDemo extends SwarmImpl {
8 C' @& k+ G! z4 U' y: n; f/ E        ScheduleImpl schedule;
9 V) W1 \; @- r% F( n* P' u        ActionGroupImpl actionGroup;8 n1 O% {1 ~# ~5 l% k
        ListImpl list;# F9 ~; }* z9 `) q  |# P
        char Id = 'a';0 U$ G& f/ l$ S9 _0 c  H; r! @

+ T1 Q+ R4 n2 k; ^1 A+ v0 R' ]        ActionGroupDemo(Zone aZone) {" u, J$ Z  Z, l5 {: t
                super(aZone);
) S% f9 j' G. V9 t                list = new ListImpl(aZone);! @9 O/ d$ D4 v6 r1 [
                swarmSetp();! B$ B8 x/ K( v" p" X3 f5 ]
                actionGroup = new ActionGroupImpl(aZone);
+ M9 }, I9 A  K" m# {) r6 I                schedule = new ScheduleImpl(aZone);
7 d9 N: ~" I# z                try {
8 @/ ~  L) z6 s1 _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 u5 I: |) X4 G7 e                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 N) G( U; n9 M0 G' A                        ; x$ M- j" D5 U' ~! Q, R
                        actionGroup.createActionForEach$message(list, agentSel);
8 K, Z: H  G7 h- p2 o                        actionGroup.createActionTo$message(this, swarmSel);; P- [2 f1 F! C. V) t2 E1 d
                        schedule.at$createAction(0, actionGroup);* j- I) L( b% `) C
                        schedule.at$createAction(1, actionGroup);
6 d& W; @: k" a$ o/ e* p5 d3 r                        schedule.at$createAction(2, actionGroup);) v# n, e& h, b# O
7 r4 P" s" X# j. `$ v
                } catch (Exception e) {* ]' F! _4 \) J6 m8 x- y1 I' h
                        e.printStackTrace(System.err);
3 w9 I" l2 ]8 v0 h/ E. t- W                        //System.out.println(e);0 z( s! {0 X% o" J) o
                        System.exit(1);7 f6 U6 i" }' B
                }
9 a: m$ @( m, ~) ^0 c6 P3 D! G, `' @1 l4 ~' z

, ?7 V5 ]% n1 `! c        }- e  w) J& }' c: V9 k! F

+ {" z7 ?) A  g9 E* T        private void swarmSetp() {
8 X4 @6 y# F0 g% }# Q& J. m+ p' _; n2 `                list.addLast(new Agent(Id));4 `. ]+ S' U& ~
                Id++;
/ v1 ]! i3 h5 p1 s2 i6 a        }
7 P, C/ W0 v7 K9 _: e. d3 q' f+ k: h( E& b& j
        public Activity activateIn(Swarm context) {7 r" p' _0 B7 t/ T
                super.activateIn(context);  J  F# Y( `" m" h1 V" W
                schedule.activateIn(this);" j# r& K6 W5 e. I, \$ e8 h
                return getActivity();
4 \# ?$ a. T$ y- v0 O        }( _! Y9 K! g) \
8 }" ]7 B0 l/ |# a3 B
        public static void main(String[] args) {  F0 d% J0 Z3 S2 L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  _9 x# U! X: W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 j$ L8 E" R/ M3 v
                swarms.buildObjects();! {8 m  d2 J: r: h3 v
                swarms.buildActions();
& X1 f) k8 q% H" q* u$ W5 D7 q7 p                swarms.activateIn(null).run();1 Y. q6 `" A% B
        }2 i8 ?9 L2 ]& O

# l5 O, R8 Q  @) _/ q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-22 03:30 , Processed in 0.024288 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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