设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6532|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 E- z  p! h  y
. [9 x9 \4 W! U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  l, ~( \# l0 e' V7 U: C3 A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) E2 y: G( m' |3 C0 V+ nswarm.SignatureNotFoundException) w6 @. |8 \, x! p8 d# \/ n& Z
        at swarm.Selector.<init>(Selector.java:76)
& P0 w: q3 z; U" k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 ?8 g+ Z9 w  f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ m- J- o3 N2 u0 d4 ~$ s0 ^5 l/ J: R. x% _

7 ^+ j/ j1 N) N5 p- k. {0 R0 R6 Jimport swarm.objectbase.SwarmImpl;
4 p# u5 ]' s0 g' E. {import swarm.objectbase.Swarm;; T% N  c$ ]3 t+ h
import swarm.activity.ScheduleImpl;& k& b3 m/ |+ o
import swarm.activity.Activity;5 ]. Q% V6 v- D8 ]% ~
import swarm.activity.ActionGroupImpl;
8 D: D4 F, U# }6 n9 Z( C! X/ [import swarm.collections.ListImpl;
6 v; {6 r5 E* ?$ ]: p# M  G4 Iimport swarm.defobj.Zone;
# ^3 K, H) _9 U( w7 Iimport swarm.Globals;
; c8 Z, Q1 Q! O9 k) @" Iimport swarm.Selector;1 l& t0 i# J! Q' e  U
import swarm.activity.ActionGroup; 9 w6 `* n, i# m9 j) n$ a: E$ n
class Agent {
% M& q8 [$ {8 ?" B/ u, _. w        char id;
% U" H: G  g5 A/ |4 H+ n3 f) B
# f, k; _" p) `0 @* e7 c        Agent(char id) {
' m; Y' t# l8 G                this.id = id;8 e5 ^% A3 z" t2 B7 R# g# ?, o8 r3 Z4 F
        }
: }$ E, D0 J& p2 ?
; b0 x# N3 H6 G+ \# K% D4 |        public void agentStep() {1 v# o8 A! N" ^% Z; k1 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());( v- U+ D' `2 a  R. |0 h7 F
        }
2 ]0 V2 P6 M! @/ V: c}' @4 b3 M0 ]& g, l8 q  f
- q: t- J+ a+ t
public class ActionGroupDemo extends SwarmImpl {
# L* I  i  ^5 i( \* G! c3 D        ScheduleImpl schedule;, \9 B9 W* |- y  V# ^9 v
        ActionGroupImpl actionGroup;
6 S, l  Y: C6 }) z+ w  u% O        ListImpl list;5 d7 N- w) v, W; L  i6 R
        char Id = 'a';
: [$ n* o, H4 y+ B! s  r. w. u# y& V+ p5 o3 c
        ActionGroupDemo(Zone aZone) {; F' Z8 S. ~+ a# N4 m0 I' _
                super(aZone);; a5 y' t+ s" d3 k& w
                list = new ListImpl(aZone);
4 z! k" [& h3 l0 k3 l                swarmSetp();( _7 E) m' \' @
                actionGroup = new ActionGroupImpl(aZone);* t0 p/ i# ^. G0 C/ J
                schedule = new ScheduleImpl(aZone);$ e9 o7 @. Y9 [  n& d: C( f
                try {- h7 m& Z( Z( B+ E0 N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ i$ V2 Q# A1 ]) K5 A$ i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 t3 u% W$ `$ M9 E; [4 Z$ y& f: E7 p                        
5 L: ~. s1 R8 O* Y+ q" A, ^" r                        actionGroup.createActionForEach$message(list, agentSel);* J4 l! M( J, V& K8 d
                        actionGroup.createActionTo$message(this, swarmSel);0 ^0 M5 T* H# i  @# M7 G
                        schedule.at$createAction(0, actionGroup);
8 A% t" I# k. S( l                        schedule.at$createAction(1, actionGroup);+ a0 v- P7 }. p+ X  Z
                        schedule.at$createAction(2, actionGroup);' l7 N. F! V4 K
+ B+ J, ~6 B  }+ Y( G: i
                } catch (Exception e) {
( u1 u% g. N8 _5 B1 C* o! Q                        e.printStackTrace(System.err);$ a; C# ]. ?+ R9 ^# }" Z" ?
                        //System.out.println(e);
9 r3 K8 b: o1 S                        System.exit(1);) i0 _+ N- i8 I# `' f$ B, b" k
                }2 G% R- Y) C; m6 C

" R) Z- Q9 Q; r+ h4 L
- ]# w" v3 t" Y3 [        }
$ G. j* y$ q: j$ \# ~
; K4 K7 h& `+ B* G$ V9 ^% Z. R( F        private void swarmSetp() {
9 x% ]* Q" ]2 F& C& _6 x, X6 ~) |                list.addLast(new Agent(Id));1 b5 m1 t. f  `; J" u6 K
                Id++;
# r8 E. o  |! V' a9 D# Z        }
9 s: r  z3 a5 q/ g! k4 ^
" ]. W: e4 C% A* i        public Activity activateIn(Swarm context) {: ]% e  p! T. y1 K- A! A' p
                super.activateIn(context);
# B9 c" }1 Z& ~" E* J& {8 q                schedule.activateIn(this);
3 d. ?  W! t$ i  J; B- f                return getActivity();
& n& y, \4 v) ?" D; Y        }
6 \% O1 Q- Q# B" z' N/ ^( \' a7 w  m" O/ s2 k. R) |
        public static void main(String[] args) {! z& M2 \) @$ `9 k8 S4 Y4 I! w! \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) d$ o* B2 `, U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. l: R1 S4 j8 P. \
                swarms.buildObjects();2 J& s9 L7 G% r: _- s. t
                swarms.buildActions();$ Z1 p5 p- i; {  O$ W' ~* z, T  A/ \7 t
                swarms.activateIn(null).run();: _7 e: w9 {+ X3 |
        }
$ Y: w# A. C! r, `0 u; I$ m' m; u# N5 A7 G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 08:13 , Processed in 0.016124 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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