设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10531|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % r. G$ U) {" ]

; m- R8 N: Q% g, l, N# m( l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- n$ I) A1 t' n% Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# |5 [( o9 V7 B
swarm.SignatureNotFoundException
( Y/ E( D" C1 \        at swarm.Selector.<init>(Selector.java:76)3 R2 W( O: l  y( d: V- v7 c* f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): `' ~2 v# e, A9 b6 ]# G  j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 S2 S# W: W! m7 f
  m' a2 P: _0 e+ e) k# M. J2 ~2 ^
0 ^8 }+ O( @  x3 e2 F8 Z3 z( [
import swarm.objectbase.SwarmImpl;
& f1 c7 u7 `' [2 kimport swarm.objectbase.Swarm;, {( ]$ \' i- a2 a5 V- r
import swarm.activity.ScheduleImpl;: T5 K/ d" ]- i& t" j; s( i
import swarm.activity.Activity;
: u  j' N$ Q3 Z8 i3 s& Limport swarm.activity.ActionGroupImpl;3 j) X0 K. F/ s) _
import swarm.collections.ListImpl;+ A6 H8 P' T! |% J  o
import swarm.defobj.Zone;
, A% e/ J0 `) F+ n3 mimport swarm.Globals;( ^# ^, J6 G9 x4 I
import swarm.Selector;* ]4 n$ K8 F& g$ L2 ?
import swarm.activity.ActionGroup;
% s5 W$ ]$ P2 A% Fclass Agent {
8 t$ @- x3 u' q% k) u) j* L, a        char id;' L8 p1 U) H5 z+ a. |4 ]

; B" o) Q# L! Z7 J( |7 b& h        Agent(char id) {. \0 [- G4 X" ]1 }1 i" h
                this.id = id;
1 q' d# I& U3 \4 g1 R: J1 z        }
% X3 v% z: X. o- n. d! ?- g0 B1 b3 T
        public void agentStep() {
1 m) v! A$ H: {& M1 m                System.out.println(id + ":" + Globals.env.getCurrentTime());$ i1 d/ r. e7 T/ P% t& q9 L/ W
        }
' S! D+ j9 a# E& N7 j) `1 O}
6 Y2 V& r7 p0 ^; v, G6 O+ v4 C
# Z( e  {, i, y5 ^1 cpublic class ActionGroupDemo extends SwarmImpl {
& V. I# ^+ G. X  t        ScheduleImpl schedule;8 D  y% j; G' ]" U9 f
        ActionGroupImpl actionGroup;2 B! R, Y# K( [! ~* l/ f' T
        ListImpl list;, t$ s2 b  v+ {
        char Id = 'a';! M$ z8 T' a& ]. i& M
, K# i* e- j* F, U) P# }* a/ t! M
        ActionGroupDemo(Zone aZone) {' R) M: P* S( ?/ p  B& i
                super(aZone);6 M' i, F; @+ k8 u7 }
                list = new ListImpl(aZone);5 {, ~, c4 t: Y) \+ t
                swarmSetp();
8 w3 E% z6 A) S0 C                actionGroup = new ActionGroupImpl(aZone);& N* U9 ]7 y6 D2 G. Z* v& R8 W: O
                schedule = new ScheduleImpl(aZone);' z" Z+ k0 r6 C
                try {2 U* q  n7 M+ e
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 n9 r" I" [, B
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ v  `" F" U# \3 J9 m+ I. {6 u                        
3 V: d8 `8 Y, {# |, Y* @* R                        actionGroup.createActionForEach$message(list, agentSel);4 i0 B' I. N8 J0 D
                        actionGroup.createActionTo$message(this, swarmSel);
: n7 n) G0 Z; t( O1 G( j                        schedule.at$createAction(0, actionGroup);
5 t: ?% ]& _9 [9 h) r" H% C+ D8 Q                        schedule.at$createAction(1, actionGroup);
" h6 D; e3 S8 }/ ?# K                        schedule.at$createAction(2, actionGroup);7 E! s% E7 |7 f0 |( {

- C: c" C' {" X                } catch (Exception e) {7 I' _- o: l, E
                        e.printStackTrace(System.err);
' T5 h# V* A3 }2 a. ]                        //System.out.println(e);
# r& V. N  x# ?- @$ e# [                        System.exit(1);
- W9 Q  g0 `. p- k/ M# \                }
. ?" S6 v! R3 Z0 r
" B) s  B# k* L+ @1 v5 ?' F% ~2 V/ j# K+ T6 l5 B
        }
6 F& ]; J( R/ N6 i8 Y8 F4 c4 J) }  N& ^! S+ s0 t- b( [# b
        private void swarmSetp() {
: U# `. ^3 M2 H9 B                list.addLast(new Agent(Id));
( Z+ C2 s% H! a. u" E                Id++;
+ W  S; R" H/ O2 C! s, K        }
( N: ^' a6 T" q" D6 z/ `  L
& d1 c! s: I  a& y! f  @  F        public Activity activateIn(Swarm context) {
' m$ D4 e' s/ r: c; u4 n                super.activateIn(context);
1 o/ Q2 `6 }9 W; L8 }/ A, M8 b2 C                schedule.activateIn(this);
) i+ M- N4 H+ W- q2 V9 n                return getActivity();1 l7 v# D! }, I) N1 I+ L+ Y& w, b
        }, Z# J. x. f3 z3 @9 E3 T: B
6 l# e3 i) X3 h+ s! m% Z" m4 r
        public static void main(String[] args) {
; ^- h4 r2 A6 g/ D+ j! s. P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 X, Z" p( E. G9 g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- K) _  m0 Q# r) C, n
                swarms.buildObjects();. g1 j1 X/ z! j3 q& w" y
                swarms.buildActions();
) g( n8 W0 o- ]0 j# J) X) |3 m                swarms.activateIn(null).run();$ Z0 m8 Z  W1 Y  |$ ]
        }
( D+ l, m& o2 S9 x0 `( ]
3 O: e. h1 P) r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-16 16:15 , Processed in 0.011562 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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