设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8820|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' U8 m+ m1 m6 [. \- I8 b

& _7 @  Q2 I, F; {! [' p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: z3 [. Y* n! F/ r! ]+ \+ J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. W# r) S8 _* b$ K, C6 a7 ?2 Sswarm.SignatureNotFoundException
, s: D$ S& v' O5 r1 P. [" p; v        at swarm.Selector.<init>(Selector.java:76)
* ]- L5 O& Z# N0 I/ {& ?$ m9 q3 T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# t$ c9 u. V; m; G$ [+ u" B8 }" ]        at ActionGroupDemo.main(ActionGroupDemo.java:67)# V0 a" \+ `* I4 i  L
0 `! F" F' ^' ], f( a

( x# Z0 Q8 o4 Z7 B" Q& \" j8 Kimport swarm.objectbase.SwarmImpl;( ?7 L+ g# d! R
import swarm.objectbase.Swarm;' f/ f$ a! g: q: @( ]& Z0 H
import swarm.activity.ScheduleImpl;0 u  k# o8 i# W1 j9 Y" p2 x5 q
import swarm.activity.Activity;
3 `5 [2 h& [$ Cimport swarm.activity.ActionGroupImpl;7 n% n+ D/ f$ v% a( z" x
import swarm.collections.ListImpl;# F2 ~3 u0 F; h( f) m( g
import swarm.defobj.Zone; & f; {2 {& c/ j
import swarm.Globals;
% F' B% [" l. k) V9 v4 z9 u9 R' V/ `import swarm.Selector;
# J/ ]1 D3 F% Aimport swarm.activity.ActionGroup;
! C; @6 [* l. O2 A) {class Agent {
2 u( P: }  F8 c7 v        char id;
. w" q" Q0 Y. B
9 T  C4 w7 m. B: ^' L  \        Agent(char id) {
6 B( l9 A5 I$ o& y% Q0 U. i                this.id = id;
4 q" `0 a- h  S! F) A3 [        }( c+ g/ A/ |4 K6 ]
+ U  g5 m( b5 }: A
        public void agentStep() {/ H' O: E9 c: w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) N  i% o$ }) T  J$ u5 n) F        }& C' ~$ F) z5 q; o8 e: M: d* x( \
}3 s1 O- ^. X, S* m

3 g% [2 A! Q* i9 V) }2 \public class ActionGroupDemo extends SwarmImpl {6 U6 j! v0 ?$ E: |9 m! ~
        ScheduleImpl schedule;3 q; D$ Y; R& y7 T& K* P, @- [5 W
        ActionGroupImpl actionGroup;
  w8 g8 E* O! v0 D1 h; ]        ListImpl list;& L& S0 |$ M  C- ~- @
        char Id = 'a';. i: G6 Y9 o/ J( T. t* [
4 Y% ?* `9 t. O! i
        ActionGroupDemo(Zone aZone) {
1 Q; D5 N% m3 O5 }                super(aZone);  N" Q7 Z7 [4 f( Z) r& `
                list = new ListImpl(aZone);3 B2 O4 t0 h* O; I2 f
                swarmSetp();
& l7 `- x) ?6 A6 U, T1 _  O6 o                actionGroup = new ActionGroupImpl(aZone);
0 ~9 U6 s% L  N" ]# M$ _                schedule = new ScheduleImpl(aZone);; H9 f- w" Y# s! l2 g5 p' q
                try {
% H; ^+ Z' V7 [8 ]: C! e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  i2 s! _3 C/ Q6 n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  m1 T, C' F/ f
                        
" p' K4 |/ v) U" m                        actionGroup.createActionForEach$message(list, agentSel);
* A# a9 N0 n; b                        actionGroup.createActionTo$message(this, swarmSel);
9 h( W) \& W0 v. t                        schedule.at$createAction(0, actionGroup);
+ y' I! Q. f% f- l0 J                        schedule.at$createAction(1, actionGroup);$ p4 E9 h; h: `1 ^& k$ J
                        schedule.at$createAction(2, actionGroup);4 n$ ?" [0 T# Y
5 q( u8 q' X. W& U
                } catch (Exception e) {6 z: a- s3 a- P! A% z  k) Y$ W
                        e.printStackTrace(System.err);
0 s; \1 t* L1 C4 x: G: L                        //System.out.println(e);# |) R$ s% I8 l5 n
                        System.exit(1);
* p  q* T6 S% ~( Q                }# T. q+ X- J8 N; Y1 D: c2 F' Y2 h
6 R3 a6 @) _' F  d. s# q$ H- j
! N8 V( X9 v  Z5 |6 P. B& c( W, g
        }; {% N5 B# b6 d* n7 I+ z$ o
# z3 c- G9 t; m% e# [4 v
        private void swarmSetp() {' L5 W: U4 ~4 ?  C0 W* O% ?
                list.addLast(new Agent(Id));! ]. s+ [# _9 p# R; F  [( y2 I
                Id++;% E; {5 t: y' j6 a
        }
  o" r4 `5 X: g' l' G: f- Z. b2 w4 @0 p$ [2 L3 E: K- k
        public Activity activateIn(Swarm context) {
4 I1 k9 U8 L( i                super.activateIn(context);2 ~' b0 e" C4 B
                schedule.activateIn(this);
$ j  J  \* z$ C- Z! m: F2 Z, K                return getActivity();3 p7 J$ f, M1 _. f) h! |
        }6 F' q0 o8 @# X

% z! v0 A+ Y* Q+ \: ]        public static void main(String[] args) {
+ M: ~  X; `* o! k0 j- I' e                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 H, ?8 `3 _4 l* r6 X% {  h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 y+ B9 a+ V  Q/ ]
                swarms.buildObjects();
% q/ g: B, {" s7 K: M9 T                swarms.buildActions();% w8 C4 Z5 _# e7 N5 Q; N9 _0 _
                swarms.activateIn(null).run();
. _& b9 |. Q, c5 U: P        }& d1 r) d/ x( W5 ~4 J/ R$ G3 N: k: [
1 e  n# j; T  m  z  h% A
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 18:10 , Processed in 0.020290 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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