设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6008|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / B/ Z. g7 n" r& S

4 ?4 u9 N3 E$ v; Z$ @. F6 h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( ?) k) y& U8 `6 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 R$ G& }* o3 h4 {swarm.SignatureNotFoundException
# U) t# t7 I" }/ d1 N' y        at swarm.Selector.<init>(Selector.java:76)& o1 @0 n7 }% [0 A
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 Z2 H/ o7 J# e9 C1 E# s; G        at ActionGroupDemo.main(ActionGroupDemo.java:67)& X2 `) [0 l( E8 L$ |% P7 ^) c" M% F

6 w" \) E3 e) F* O3 @7 r  w4 Z+ {9 z2 r% c; `
import swarm.objectbase.SwarmImpl;" x7 P6 W5 @3 I; _/ Y# F
import swarm.objectbase.Swarm;& r# Q6 Y, A+ H0 h
import swarm.activity.ScheduleImpl;0 G( M0 Y2 p0 N( |9 Z
import swarm.activity.Activity;
4 v0 \9 ^- f2 p% ximport swarm.activity.ActionGroupImpl;
: Y  I2 V+ g8 {7 l& g! r4 eimport swarm.collections.ListImpl;, _" w$ A& M/ H3 ?
import swarm.defobj.Zone; $ r& z- ]8 I( j; N
import swarm.Globals;7 `" Q' ?3 e/ |7 M! w. e+ c9 ?
import swarm.Selector;) H7 X; |/ N) M# v/ V( @+ w
import swarm.activity.ActionGroup;
* k2 m0 \& T# o$ `- r0 {class Agent {) W3 x+ L7 G/ ]- ?$ Q
        char id;1 ~4 j& [% n- B
6 \) Y/ ^7 E/ N2 k1 h% r1 z; N
        Agent(char id) {
% f* K) [; h% j2 z+ ?                this.id = id;8 Z) ~+ y( E  L! @( j. Y
        }8 |3 t9 X" h0 k3 B  J# [. c: U

2 V: F# P# s) ?3 p6 Z$ }        public void agentStep() {
& g" q- o/ c. ?5 y: m/ k5 a                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ m; M0 D  `( Y4 F% e# s. Y        }
- [/ t# p  u& \7 T* {3 b}
" q7 X' Z# {9 ?# K5 s0 X2 m# }+ E
public class ActionGroupDemo extends SwarmImpl {
- }7 u3 O2 I% {! m5 C* V5 ]  V5 E        ScheduleImpl schedule;7 N" Z' @3 W1 e. F% D" t3 n
        ActionGroupImpl actionGroup;: o" d* f( ^, }5 k1 A2 i% @
        ListImpl list;6 T2 A% `9 k3 o6 {3 z- _* G
        char Id = 'a';
& Q( o. K+ Y  V% V- \+ P# z& V1 j0 }) h, x, t; X2 [: s
        ActionGroupDemo(Zone aZone) {1 f1 \7 ?% R3 T# P! h1 Z
                super(aZone);/ C. M3 I1 O% }4 t4 ~
                list = new ListImpl(aZone);
$ @3 {( C& f' I7 e) C6 W                swarmSetp();
) F! f% r: ^  t) C$ v- O                actionGroup = new ActionGroupImpl(aZone);
' y# @  z3 j) b: g. K                schedule = new ScheduleImpl(aZone);4 y5 N' T/ h$ ~  R
                try {
. N7 D! ^7 Y# ~( z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  ^: ^8 A, z0 f1 F  I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' ^, Z! R: S7 o/ N' A
                        ( e+ U* }. l' t. e% ^
                        actionGroup.createActionForEach$message(list, agentSel);0 R; x& {5 ^- s/ m4 z
                        actionGroup.createActionTo$message(this, swarmSel);8 K2 I4 ]; I; _' w
                        schedule.at$createAction(0, actionGroup);5 g7 `- S  Q4 I& S7 Q3 l9 d. i
                        schedule.at$createAction(1, actionGroup);
, Y7 i' S3 t/ e7 |1 T7 R: i. Z                        schedule.at$createAction(2, actionGroup);
. W. B& w; b# {$ F. }: r9 j9 T) j$ M8 w! p* f
                } catch (Exception e) {
3 x" O& X" b, K9 ]                        e.printStackTrace(System.err);
4 S* E0 T" ~/ \2 t                        //System.out.println(e);
4 G; f  L* X/ p/ u" d) S                        System.exit(1);
7 M: K* J) a. l                }
4 W: r& f' C: O
1 M& {! V3 j: T' T& p# U* r& [+ d. ^: O" E+ o
        }7 Y3 ?. i9 f6 G, K# f
) H4 ]) h& H) x8 Y
        private void swarmSetp() {
1 F( B7 ~; p: j0 o7 l8 s                list.addLast(new Agent(Id));4 H$ G) E# |0 O7 b( d! F5 w- j
                Id++;
, E5 q. _4 z- ?/ y        }
# H) k8 z" O  S6 m: J) ?+ S5 O/ X, B+ |( a: i
        public Activity activateIn(Swarm context) {
) t. Z  _1 ~" x) Y                super.activateIn(context);9 `# r. N- q. _1 h  b  f7 ^) Y& a
                schedule.activateIn(this);' G3 h# `0 a/ z
                return getActivity();# c8 R( G" w# b$ T+ H9 h
        }2 w6 f! e& t2 a+ O

9 |' X; C- g2 t8 `& y" P6 E        public static void main(String[] args) {& m- l4 E( Y: h8 n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 K1 W+ |1 {* U8 ~' v9 G0 P/ Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# M$ `1 A1 k; z( H! [
                swarms.buildObjects();
- J. G  c) z: J: T9 \/ d2 L  @$ m                swarms.buildActions();
; B  E3 S! X6 d+ C0 G. [& b                swarms.activateIn(null).run();
; T" |* x& R+ P        }, \3 g9 n4 ~$ Q# q5 o2 @/ e

/ J- j6 m! t9 n" n# ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-13 19:18 , Processed in 0.020992 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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