设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9295|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 V" H+ v% ], m' t# A. H9 R* Z/ q7 l) h4 a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ D+ A& t- j& O1 y; O3 x8 n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 Y6 C3 `9 ~1 h% a
swarm.SignatureNotFoundException; t; d1 [& F" o  W1 [9 J
        at swarm.Selector.<init>(Selector.java:76)
0 K7 Y9 M8 C: o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 D# b* r. [! @) C; d+ v. R
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ G/ s4 ?( G& l+ Z# x( m9 ^

1 y3 ?0 w; W+ s% _4 }) o
/ Q' Y' ~7 Q! i  f& S! ?% zimport swarm.objectbase.SwarmImpl;5 O- s9 Y: r1 o$ o
import swarm.objectbase.Swarm;" h" Q4 c. ~# |* E: `: B( i
import swarm.activity.ScheduleImpl;6 G/ W' Z# m- A3 u& _$ y* w
import swarm.activity.Activity;
+ f8 ~* k- y  ~1 b$ U( gimport swarm.activity.ActionGroupImpl;) [; ~. i7 F( |% l
import swarm.collections.ListImpl;4 `% \" I! ?: x
import swarm.defobj.Zone;
) d' j$ s" O" l$ g+ }. u( uimport swarm.Globals;$ v5 m$ ^% z5 n5 ^9 s
import swarm.Selector;0 p' [0 I6 b9 r% v6 y
import swarm.activity.ActionGroup; 0 l9 j: ?5 B1 m# q* ~" b6 x" _9 d
class Agent {
# K0 ^5 a" m4 s3 m  P* z        char id;! w, [9 v% L' ]! `

/ I1 a! c" P. @' H7 }; ~# z% K0 o        Agent(char id) {8 G' `9 N/ P% ~/ N# j& O/ X6 R8 p& e
                this.id = id;1 n" T! U$ ?' q' s/ W7 H: y6 |
        }
1 k, o7 r' J, }2 `- W! A* e' x. Z! l3 B9 S# v
        public void agentStep() {/ ?! C# L$ O- q5 b) I
                System.out.println(id + ":" + Globals.env.getCurrentTime());) Z, C' z' R+ Q7 f3 W& z  ^
        }& m* [  X# m! J: ?
}# l1 g4 K; y+ m+ u) x8 C
6 L+ q- h+ E) z5 W
public class ActionGroupDemo extends SwarmImpl {3 a2 B: u" t& E# ]8 G% `+ @( l& @- D
        ScheduleImpl schedule;' w4 b$ k8 W9 ^8 g& i
        ActionGroupImpl actionGroup;2 c% Y& n& m! }" C4 _, j
        ListImpl list;, R; Y2 g: [; K
        char Id = 'a';
; Q& f8 x% Y) @% Q* q) J4 }) [/ u  w; O/ X( p9 g; U9 t7 V- z5 V
        ActionGroupDemo(Zone aZone) {
4 U" J  d' D+ M5 \1 e) r                super(aZone);" [  E5 v2 q% z
                list = new ListImpl(aZone);
1 S3 g  ]: a! M* V4 B5 G- n$ O                swarmSetp();% i( W3 H8 y# S0 V% }
                actionGroup = new ActionGroupImpl(aZone);
9 ~; B7 Q# e4 z0 W2 ]4 \0 n                schedule = new ScheduleImpl(aZone);- P$ a' f2 P, y
                try {
0 o7 K/ i2 A- m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# w0 @+ b% E4 w( e; l( z9 ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" T/ M, X0 w0 Z; Y. _& Y  q9 f                        
, B& X' [  N, p8 G) x2 l5 a$ P                        actionGroup.createActionForEach$message(list, agentSel);6 [5 P9 R9 R0 D' l
                        actionGroup.createActionTo$message(this, swarmSel);
4 _" a0 u$ P/ ~  s- Y  j1 |6 B" i& W                        schedule.at$createAction(0, actionGroup);
0 m1 {7 A6 a( F7 G                        schedule.at$createAction(1, actionGroup);! p' e! j: H% a! N6 y
                        schedule.at$createAction(2, actionGroup);
3 h5 d  {/ ?* J8 u1 M
% |$ ~  d9 R' W6 z8 d- t0 }) F                } catch (Exception e) {  p+ F% i6 S. N  o3 X8 h8 _& s2 G
                        e.printStackTrace(System.err);
) s" k  O8 a! Y9 u/ E: F                        //System.out.println(e);
4 {, m) }9 [$ P* r                        System.exit(1);
) d) Z/ l* b2 W' a                }: S6 }. l) \; \7 I& {

5 }0 L, Q6 i: K4 d
6 e( ~/ I% W! U& j# ?+ Y        }: p8 L1 X# g/ N* D3 E9 d/ c1 \) ^& t
. q! S" k" K, |+ g4 A# U; |7 c
        private void swarmSetp() {' |, t$ m) I1 \) A- H
                list.addLast(new Agent(Id));
& m" g: v$ @8 o1 c' l                Id++;2 U! X  r7 Q3 t' w, B
        }
, X# |% k1 {! e; _
5 f- |3 ?' O6 M0 L  k        public Activity activateIn(Swarm context) {
6 e# W1 d% A* N) x/ j/ E                super.activateIn(context);  H* f' N, C4 G$ w
                schedule.activateIn(this);
8 r" e1 o" d& d. B$ N9 @                return getActivity();; R- s* a9 C  P! I' ~
        }  s  @! M' V+ R$ J* N: v6 q* ?

* N4 J! O$ `, ^2 W        public static void main(String[] args) {. z) C' P3 W; I  t# c: W4 W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" c; s# l) E/ }+ h3 T, G; l3 N* m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ G+ B( X( O5 y: |0 ~' L' ?( L                swarms.buildObjects();! X' h# O! i" s* F
                swarms.buildActions();
% g% c4 q. X1 Z( h# |/ c                swarms.activateIn(null).run();
1 S  Y9 ?( v( O+ J% K( z8 X5 y/ w        }
# X7 @% \. _: U- o3 E1 @/ d' e' i5 o- s, I6 ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-7 17:11 , Processed in 0.014821 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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