设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8458|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 e1 i9 S3 c; _1 w( r1 A

; i3 e: w  c2 z1 O: p. P* [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 Q$ Y; c, h1 p; @, Q" F$ Y: C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ l1 Z* ?2 |: M8 [3 ]! j5 e* }swarm.SignatureNotFoundException
: q$ S' d, Y0 p4 F% Z1 s9 H  J  M        at swarm.Selector.<init>(Selector.java:76)1 H. b1 e# B& _' T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 \- x7 c- S7 U
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 |3 S2 K+ H' O; ?: L/ x
6 W  l9 E) s; o$ J$ z5 a- Y
* U7 t, J: P7 d* c* W' |2 Z  ?( limport swarm.objectbase.SwarmImpl;
7 [5 t1 K, S, T4 ]# D% B$ B2 u8 Gimport swarm.objectbase.Swarm;
& ~) M- Y6 |+ c6 Q& j: ]  _import swarm.activity.ScheduleImpl;
0 [) y8 L! b1 V" g! N8 \. Dimport swarm.activity.Activity;
4 a4 G! n- B( b+ a$ D( |- Bimport swarm.activity.ActionGroupImpl;
: A% F6 `5 K$ ~: h5 V# n. c+ E8 ximport swarm.collections.ListImpl;7 `" M$ B% p6 G5 h- h! N
import swarm.defobj.Zone; 6 ]9 R5 a( @2 F. i) {
import swarm.Globals;: p- ?7 B% D$ t" M! h& {6 w1 y
import swarm.Selector;
  s! ~# B5 E+ P$ U; Aimport swarm.activity.ActionGroup;
" t2 ~+ K$ ^2 c& o4 o& ?: Fclass Agent {( V- _' O; z3 T7 |) ]- l9 T
        char id;( l: b: H  p) T/ N+ E

$ I/ j/ J+ K  T* S4 Z' k* R- A- G        Agent(char id) {
+ B  Y2 e, a; [" E& u7 P                this.id = id;' E' P/ ?7 `3 G. |9 Z5 O& B
        }
% k* ?0 T  P; h; n/ k
* K# P- n2 E3 ^1 m$ V6 Q        public void agentStep() {; w, f" I0 p9 y9 ^( {2 Q5 z
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 J% w/ s! r! |: j0 ?& i" ?# P  _
        }' w% g  f( Z3 T  Y8 N0 |1 U
}' O' I( W# G7 p8 f

, Q) E* A$ s/ i2 [$ b: x7 {public class ActionGroupDemo extends SwarmImpl {9 m0 ^$ \0 A  R3 O  T( {+ I
        ScheduleImpl schedule;
0 b8 O6 O& i+ @0 R        ActionGroupImpl actionGroup;
: \3 l& r; o: b7 Q        ListImpl list;
, k7 G- z& e6 H        char Id = 'a';+ H+ n7 H' W) R, z
, S& g$ m) C* k
        ActionGroupDemo(Zone aZone) {
+ T5 i8 ^7 ^5 a* M; }) h- ~                super(aZone);
; m# @+ }0 Y5 }( M                list = new ListImpl(aZone);/ l9 D" U; y2 V. ]% {% x1 w
                swarmSetp();% F, W+ }" T- I2 ~, O1 h0 `
                actionGroup = new ActionGroupImpl(aZone);5 Y+ Y  T* K4 b6 n* h
                schedule = new ScheduleImpl(aZone);# G6 G- c5 r5 Z" n* B0 s2 I
                try {  E* O, Z  E* a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. ^# S- g& J1 L$ v: z2 u                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 q# T+ z) M; l9 M                        
- c  Z$ |. L! n7 w! n4 v. I& h, j                        actionGroup.createActionForEach$message(list, agentSel);( p) C1 @# @* Z! p
                        actionGroup.createActionTo$message(this, swarmSel);6 ?, }' ?4 {2 d5 @" }" O
                        schedule.at$createAction(0, actionGroup);. [) E9 q) l/ I9 s' G0 Z4 C: `' }
                        schedule.at$createAction(1, actionGroup);
) ~; N6 T" J0 w2 D! }  X                        schedule.at$createAction(2, actionGroup);4 S% b; Z2 f5 y4 h! j8 _
5 R7 ?# o7 h8 ?& m
                } catch (Exception e) {; }3 x4 O9 X* F3 E* S+ L
                        e.printStackTrace(System.err);- d8 E# B$ k- @" v! M& E. a
                        //System.out.println(e);$ }' \' V6 I0 h. d
                        System.exit(1);, F' g4 ?6 V: H" t7 a
                }
0 J: r7 [9 q: g' a( F8 I" ?/ |
! n- K' r6 W. M. }+ g4 z+ [. N% {, V
& T/ o, r) d. z& _; [2 B& m        }9 X% t6 H. n+ E
/ ~/ X6 B& T: [. O, a( o; q
        private void swarmSetp() {$ u/ S1 l/ l' i! y% e: R
                list.addLast(new Agent(Id));
9 }1 a) s  N1 {# c                Id++;
8 j3 w6 O  O& v% o+ g' O4 @( P        }: i; x- b7 c# W& ?, _3 b" q% g' m

3 _0 I1 L& ]. M  L" i        public Activity activateIn(Swarm context) {
7 [  B. M% l/ C2 b' D/ y8 u                super.activateIn(context);
+ @) [. D! Y1 R3 _" G1 `. M1 B                schedule.activateIn(this);0 p0 E! k! P. `! w/ x% J; |' x
                return getActivity();* k7 N2 O0 Y( d- F7 l4 V
        }
+ I5 ?, \4 g5 ]/ g/ q1 Z6 {8 a/ J; w2 x8 C- u+ \) E" E. ]
        public static void main(String[] args) {
! \4 T1 h1 C6 I% d+ F1 a7 Q4 u9 }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' N2 g+ O6 i5 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. S0 A$ W$ C" x* D/ G) c- O
                swarms.buildObjects();
0 X* L- Q2 W9 u. n( ]( X                swarms.buildActions();
) W; C& p! b9 v4 b+ G                swarms.activateIn(null).run();
! B; Z! _7 j$ X        }# J  C+ Y0 p" E5 m- `0 h

! t0 K, N! g6 x7 v$ s$ P/ ^% Y/ ]}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-12 22:50 , Processed in 0.023073 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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