设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12535|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 A1 v; g) ?  N# d' t0 z. r7 T$ ^7 u/ F- A; W: [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ i' u- g: s" R0 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! W  @& c, |4 i7 ]0 W5 D
swarm.SignatureNotFoundException+ i, f3 ?, I- {
        at swarm.Selector.<init>(Selector.java:76)
; k7 c6 `3 Y+ w0 t5 u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! N6 T  j  J  A, I: S* z7 Q$ x! d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; m* s7 c* U/ D: b! U/ ?( N8 L6 L1 k( {2 Z& j

( b# H* J3 m4 w; y2 Y( Jimport swarm.objectbase.SwarmImpl;
5 [8 y. f5 B3 |/ timport swarm.objectbase.Swarm;
5 Z9 o2 P: E  A) n/ limport swarm.activity.ScheduleImpl;3 ~& M' y" a+ j! d  T/ s1 f. ]
import swarm.activity.Activity;% c% Q' h. b" J6 X" m
import swarm.activity.ActionGroupImpl;$ s# A% x7 U& I& D3 |, `
import swarm.collections.ListImpl;* W8 P# P4 c! Z
import swarm.defobj.Zone; : i7 R/ a# L- c: p, }
import swarm.Globals;( ~; ?! C& N# _$ q
import swarm.Selector;8 O7 Z! v/ K) D$ D
import swarm.activity.ActionGroup; + S$ I3 @0 f& B) l
class Agent {
, ~+ Y: A$ f+ _        char id;
1 [: ]' i- _/ r4 V! q& e. u1 q2 D! M) b: A7 N/ I
        Agent(char id) {7 c. l, |6 R2 s' N8 w# d: w: u5 {
                this.id = id;
  n. U( N( k+ F9 s, S        }
3 i( ]/ d% ]* y  A8 {* ^
3 G. _& x* I; u        public void agentStep() {8 X3 f' z% b6 g. {
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. N( X% {% m( S  ~* O+ R& K8 p" ~        }. d6 `$ K* y4 @% G3 u$ Q
}
5 [  N, W6 h2 U7 o( w! M0 O8 U/ F# ~: x5 z  D5 n- `! z1 v& _
public class ActionGroupDemo extends SwarmImpl {
8 p+ x" S  ^! [3 u( l4 m! |: Z/ B        ScheduleImpl schedule;
( L: n8 w# J9 \- n        ActionGroupImpl actionGroup;. W5 S9 `# ~" F
        ListImpl list;3 l& X# Q1 q' |% ~
        char Id = 'a';2 e" d/ _7 f& n$ e! e4 t" c- @+ h

  c" _9 m) z0 h! U! q9 M        ActionGroupDemo(Zone aZone) {
% b: [4 S. M4 h                super(aZone);5 V& {0 C* h3 b% N' M7 x3 O9 j. c
                list = new ListImpl(aZone);
" @5 Z3 I2 ~" z+ r' z3 }                swarmSetp();
3 x3 h/ R# ]9 s& M                actionGroup = new ActionGroupImpl(aZone);
6 y5 B# u% c( }4 ^- _1 I  e5 k' e3 p                schedule = new ScheduleImpl(aZone);2 m& h( u2 T2 J
                try {
. \# d7 e- p; l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% d3 E8 R# ?6 r( b' p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ W0 \! @* q, _                        , y' T2 F" C9 [0 R% L
                        actionGroup.createActionForEach$message(list, agentSel);
5 t# m/ O" u: v* I, t0 D9 U: [                        actionGroup.createActionTo$message(this, swarmSel);
# f$ \* B2 H( h$ V1 F8 N                        schedule.at$createAction(0, actionGroup);1 z6 d  @9 r) M; h$ _
                        schedule.at$createAction(1, actionGroup);
$ I( u# x0 ~9 w+ z                        schedule.at$createAction(2, actionGroup);
5 o/ e7 X& g, k5 V* F3 S+ h4 F' k
                } catch (Exception e) {) c+ G8 F1 G- Q# j* {: R
                        e.printStackTrace(System.err);5 F1 T* v; S3 g8 A' i
                        //System.out.println(e);! H0 o! ~/ e+ C5 y- ?
                        System.exit(1);
- _" B& ?* v  S3 ]3 W                }
- @: g* ]1 s8 J0 v4 G" l, J; H9 U- r9 K3 y
2 H& }# [6 F! ^$ }. w7 e
        }  D4 f4 ]$ N1 u
6 L* C' S# n! K( w0 I
        private void swarmSetp() {: z6 ?5 u3 O+ g& C+ V/ e* C1 x
                list.addLast(new Agent(Id));5 q$ [% _1 \& E
                Id++;) J* G- z( f: n9 q; [' r2 Z
        }
5 r& {! C2 N8 O/ U- s" p+ f; E" `- B, m' j# G
        public Activity activateIn(Swarm context) {$ y5 q# M/ R/ G" f* ^% x. c* R
                super.activateIn(context);
" K* W( w$ F1 N; y5 S                schedule.activateIn(this);
, f9 c+ m7 b7 M8 k                return getActivity();
: z- d9 c: W/ g- R2 D        }4 |) `0 x6 f2 s; A% P

+ a1 p8 h& Y$ d2 N1 R/ w# H5 k        public static void main(String[] args) {+ w2 E. p& B. v/ d8 c4 W& z5 S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 ~& B! p* [& L  P' h# y9 m& ~& ?4 S                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 R3 k0 h' d. n* o# {% B. ?
                swarms.buildObjects();: G6 a3 z7 I4 }) ?
                swarms.buildActions();: M% `+ F1 [. L1 B2 ?- E- ^3 c" f4 [# x
                swarms.activateIn(null).run();4 }: a3 [! ?8 T5 _1 u
        }- D' [' b* m# _& j9 T

% c2 X' F* s8 B* ]1 i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-11 11:51 , Processed in 0.017331 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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