设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6214|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  ~  S% d. Z0 z/ y. W" t2 _9 B' A2 }" t) c2 ^8 F9 S# Z) J) d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! W8 D. }" d; _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 s& v' ^: b8 g  |swarm.SignatureNotFoundException+ A5 O1 P6 P' F: o7 F
        at swarm.Selector.<init>(Selector.java:76)- y6 a2 u3 E, l: L! U) m) V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); Z. K. d$ x2 G* S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 q- }# g' O) @, p* P
# s' @+ d9 G# |9 G/ T$ q9 t; q

( w! L/ `$ M5 g. }9 j4 q! _import swarm.objectbase.SwarmImpl;
2 j7 k8 M3 z7 ^$ ~$ t3 Simport swarm.objectbase.Swarm;6 r! s" c* w0 e
import swarm.activity.ScheduleImpl;
- Y) D3 ^" U9 S& rimport swarm.activity.Activity;; o) y- `6 O0 m: K  O7 {
import swarm.activity.ActionGroupImpl;
! G8 j' [* s. Nimport swarm.collections.ListImpl;
9 N/ G+ O" Y2 {import swarm.defobj.Zone;
! W7 s! N( O: ]% ]- F0 Himport swarm.Globals;
9 E/ o+ |, L& limport swarm.Selector;# f, t3 G+ p+ ?
import swarm.activity.ActionGroup; 9 E6 K$ h6 m  F: s. K
class Agent {# W! e+ a- `- z' [3 T
        char id;0 ^- L, w2 m# T: g: P

& H! e5 h: r5 B, q        Agent(char id) {
" W- Y+ X5 B( w, _, f) M                this.id = id;
: D. V; H( k' k0 c  P/ r        }
8 ]) n5 v$ Q& g* W) n4 S, l- ~+ u( |. ^, \
        public void agentStep() {
$ V: I1 ?( T' W/ |0 D% K4 O8 ]                System.out.println(id + ":" + Globals.env.getCurrentTime());
- D0 p8 N) z6 f2 g5 k        }
: W; Y! ?/ U. h2 }$ ?" _}
2 l, ^; E# z/ g; l  }; p1 B7 n) z0 |( D- j/ \3 Z9 @
public class ActionGroupDemo extends SwarmImpl {' C5 ?5 l, A" O
        ScheduleImpl schedule;5 ~! \$ ~" ~+ r  U8 p
        ActionGroupImpl actionGroup;2 Z. M: Q0 s, j
        ListImpl list;5 r! z: w, j; L8 z3 C( Q- ?1 w
        char Id = 'a';
+ ?" \1 e3 f3 A9 I; Y. E5 q" v- |! @4 l' ]
        ActionGroupDemo(Zone aZone) {  O! e' t+ m) X) D  W6 J
                super(aZone);% c3 C  j: k5 E' F: `& X* [
                list = new ListImpl(aZone);# k/ E1 o; C( l; m* Q1 a% K
                swarmSetp();
) g. Y; S3 h2 o' k                actionGroup = new ActionGroupImpl(aZone);+ ?3 z, \. q2 K9 e, v: k/ ~% d, T& Q
                schedule = new ScheduleImpl(aZone);: s; w9 _+ V6 r$ n, [7 m5 M
                try {
% R7 e/ F/ O6 b# k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- E: v$ v* J% X. P" A8 v$ H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, I- a. ~2 @( j7 A% {: s
                        
  T7 [* w% w/ ~8 K                        actionGroup.createActionForEach$message(list, agentSel);
5 X9 @* u" [6 r+ v0 W4 V                        actionGroup.createActionTo$message(this, swarmSel);6 C: u* ~3 q' P( p! c
                        schedule.at$createAction(0, actionGroup);
$ K. `4 ]8 E- ^- U- Z' Z                        schedule.at$createAction(1, actionGroup);( Q" u, b' U, n1 X, {0 n
                        schedule.at$createAction(2, actionGroup);
2 ~& H' f" f( a  d% t% F0 @# j8 F3 x( }
                } catch (Exception e) {/ ]0 x& k; M* H* T
                        e.printStackTrace(System.err);
5 G+ g1 M% n; Y3 F                        //System.out.println(e);9 w. n3 v$ o2 l
                        System.exit(1);# }" I9 q. Z8 S6 r: P
                }1 L- B& ~9 c3 k: |' R: ~

3 e9 i9 C2 w. k8 f" p4 N+ l% J8 G
) d: P5 m; i4 s* ]  p        }$ }7 E4 M  f6 D
; B: Z3 L) p. M  f8 V
        private void swarmSetp() {1 R+ @& C' n( p" k' q- [
                list.addLast(new Agent(Id));0 u( j& s! L# I9 H8 u
                Id++;9 b5 G1 b# j- F# E9 b# L
        }
! Z4 ?3 N4 L4 m) ^  u1 R+ ]* ]
3 W7 a; }, ]/ M" x        public Activity activateIn(Swarm context) {
- Q' p! D/ u4 t# q& c                super.activateIn(context);
# z  B8 @- G" L; C" h9 P, b                schedule.activateIn(this);
4 a. f; ~" |- i3 ~  ]: }                return getActivity();4 J  b5 g. f% D' s# U/ x
        }
9 o/ z1 I+ t  K$ N5 |2 o
: S6 w# R, Q0 o% i" i$ o        public static void main(String[] args) {
8 X- V! i7 Z0 v8 ]  i1 d: w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ?3 o5 R. Y) m  H6 [
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; l5 I0 X9 d: I9 z, v5 e                swarms.buildObjects();
8 }4 ?3 a- T  E3 r& j. ?, A                swarms.buildActions();
8 d/ j1 A" n7 b. P. l" k                swarms.activateIn(null).run();9 V' ^9 _/ Z* \% W
        }
) e. U6 Y9 _& P' f
$ M+ c# u# i+ t5 z$ c4 t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-21 11:08 , Processed in 0.018022 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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