设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12382|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: c/ s7 J5 l5 U
8 k: Q2 h. I- I- k; t6 _, [: O3 \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" d8 Q" }* K4 P- Y% s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; b% @4 K) }) L" A3 x
swarm.SignatureNotFoundException# E. E9 P  ^: l+ b/ o7 L7 s
        at swarm.Selector.<init>(Selector.java:76)
6 r" V; j- p" b6 O2 P5 y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 J% l  O" Q; ^* v. Y8 `5 r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( p$ Z6 ^) U( Z$ n+ c5 [) H8 `! a  j# @" l- w: a$ b

# @( c( \" C( f; q. i* A( N# Uimport swarm.objectbase.SwarmImpl;. I' d2 i: e1 J9 U
import swarm.objectbase.Swarm;+ J: G' F# P5 T+ k9 k! ?0 W( h: K( |
import swarm.activity.ScheduleImpl;
0 o3 n& c& D' ^3 R; d: i. timport swarm.activity.Activity;
) S' w2 h9 t7 o/ s- S* N' Dimport swarm.activity.ActionGroupImpl;
/ w" r/ w2 J; u1 wimport swarm.collections.ListImpl;9 F, k% z3 T. m! D8 h
import swarm.defobj.Zone; 3 \: p/ h  P8 C1 [; f: c, M" |( A
import swarm.Globals;
' l! R6 X% s9 O- t5 e- R. j, Eimport swarm.Selector;
' q3 s6 v- p/ p. [3 _' rimport swarm.activity.ActionGroup; " H' E' F3 i7 z# l2 d. P
class Agent {) U$ p0 x7 y5 F' N( |9 e/ `+ r
        char id;
9 W. x8 a0 b: F4 b( F0 e+ O  L4 a5 I1 H3 _0 r( {* F% Q4 f
        Agent(char id) {
/ x6 U9 X) _- e. @                this.id = id;
, C2 c" Z* u0 z( N/ r4 @( w        }8 s8 C% ~" E1 q  D# U; w) H8 s8 n
0 j7 r2 n$ G2 N$ x% Y
        public void agentStep() {
  T( }' m4 i% B# [2 e; O" Z2 Z                System.out.println(id + ":" + Globals.env.getCurrentTime());8 d  o4 @$ H( d9 P" E
        }
5 j/ y" A1 X- D8 l5 }: h}0 v! T4 X( y  H. o! A5 J% G

6 `; a2 e, @8 m2 upublic class ActionGroupDemo extends SwarmImpl {0 d; F+ ?6 D( _( m$ N+ y
        ScheduleImpl schedule;2 H6 n0 L# @% ?" S. x
        ActionGroupImpl actionGroup;7 K9 h3 F) F" S, a
        ListImpl list;/ i; x4 B: d% v: ]' u0 T
        char Id = 'a';
$ r& g& O% W& n* q" Q) C- C1 A$ m5 j
( K( i2 x/ P% ^8 j( h0 L& T; E# O        ActionGroupDemo(Zone aZone) {
; P, Z) w; k7 j2 A7 e$ \5 {- o8 T                super(aZone);
' G3 ]4 W8 d) e2 I- E) g& ^* B                list = new ListImpl(aZone);& {" G) Z+ A3 c* G
                swarmSetp();- @, S* l2 {5 v- P; B, U
                actionGroup = new ActionGroupImpl(aZone);* I% ~5 d3 \/ o! u! O* C( m% K& b
                schedule = new ScheduleImpl(aZone);
0 z: `5 D: r7 g$ e- z5 i! U                try {+ T5 r( y3 ]7 @0 R
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' Z) c5 Y' m9 H7 ]# a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ @0 `. c; x5 [/ @3 `5 @                        
& d) v7 g0 H/ @+ U$ ?                        actionGroup.createActionForEach$message(list, agentSel);$ _. U" a2 ]0 h* ^
                        actionGroup.createActionTo$message(this, swarmSel);' z- Q" y' H/ j) L4 h
                        schedule.at$createAction(0, actionGroup);' ?2 i0 c  y6 A  Z/ v, |' l. a
                        schedule.at$createAction(1, actionGroup);2 d4 h* u0 r9 ~& k/ t( o9 }7 b7 ^
                        schedule.at$createAction(2, actionGroup);
* A+ d! L" z& ?4 r* D
: ^  D  X* t1 q- S  a6 [" d: e* f                } catch (Exception e) {5 H' T# M3 O$ B" O# o& ]+ Z
                        e.printStackTrace(System.err);! E, q5 L8 v/ \- G& @" x; L) p2 D- }
                        //System.out.println(e);
5 W7 v. p" c3 ~7 a. }$ D                        System.exit(1);
# \; k. B8 L. w1 D) A9 F% t; c1 Q                }* m" W. l' ]' s* P- B

* Q$ l' V$ x) P' N" o3 N) u
' f7 T7 y5 q) w) l        }4 B" J. f( h# M- J
9 @! w7 n% B  A" K6 |4 ^
        private void swarmSetp() {1 ?$ k" J  ~# S4 n
                list.addLast(new Agent(Id));
+ y* E$ ~( W" K/ @2 r6 x; X" D# [) ?                Id++;5 [7 c" z0 @. J- n3 S$ m
        }
+ \, {' V  E2 Z3 h: p& q
( S7 T+ q& R" }' a; ]2 h* J        public Activity activateIn(Swarm context) {
: ?' c# k8 c0 F  L1 j. Q- i                super.activateIn(context);* }! a2 I. m- U9 p2 n9 y
                schedule.activateIn(this);
' M3 V! f0 R3 N; o                return getActivity();
$ f9 B  }& e, n/ r        }3 r& q) V3 d" Y9 e* i4 @9 q
3 K9 Z+ T2 F5 j: ~9 ?7 n0 i8 I
        public static void main(String[] args) {- r8 Y  G8 ~- S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. _- Q( \* e8 u. ?6 W! K# s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ u5 Q$ @( S" q! p% ?( I5 d
                swarms.buildObjects();+ o& ?" R2 O5 v, f( A. A0 I
                swarms.buildActions();
4 p2 i! P( z' g" F9 Q+ E                swarms.activateIn(null).run();
4 [9 [6 ^4 h7 |7 P6 S% s8 C$ n1 N% d        }! I9 C( `& l. u- f" D+ G- U/ w

9 }3 \% @/ p2 |" W4 Q  ^: t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-7 03:31 , Processed in 0.018565 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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