设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7070|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! R* P! U* j7 |, s6 r5 J: V3 g8 G
0 F( ?2 X# @. f, J/ M2 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 b& y% n5 b: v* X& j5 w' `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. R' n! c: }7 Y9 g# u
swarm.SignatureNotFoundException
  ?/ P7 T& I9 e7 x! w, c& [        at swarm.Selector.<init>(Selector.java:76)& R: q+ A/ A0 \3 N) t& l0 _, x( g: |" @( U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); |! D6 ]: p7 k% a( t6 z; v* v
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, C* {% [: \0 V# i' u  i7 K
* N4 }1 j1 B1 A4 X% H( W1 B
  i* V. u7 j  K* X2 simport swarm.objectbase.SwarmImpl;
" D8 h3 E3 K: [import swarm.objectbase.Swarm;
3 _) J2 I; ?8 z: }4 Dimport swarm.activity.ScheduleImpl;' g( J. c& L" d3 U! B( Y* n; m
import swarm.activity.Activity;
3 m% z5 i: }( d8 P5 {9 \2 o! ~import swarm.activity.ActionGroupImpl;+ ]5 @5 l' L$ n% Q0 F. D6 T
import swarm.collections.ListImpl;2 T( B" `% B' M. r; n/ a/ z
import swarm.defobj.Zone; . u- b: U' k" N) S
import swarm.Globals;5 ^' f. u+ |7 [' A% X0 g
import swarm.Selector;
  L- y" w- J4 P* y. Q( K* i' limport swarm.activity.ActionGroup;
4 K% u; I6 [1 [5 i  Yclass Agent {
, B1 I3 ^4 i  a# d, K; P  I        char id;) e! M; D. |. X: i: j5 Y

" Q1 {0 y6 f/ }: H' {5 Q4 }        Agent(char id) {
+ x/ ?6 L0 D, h                this.id = id;
) w8 C) T% K6 r        }: N5 H' x5 j  \) |7 ?: L
% e- C. h1 K/ S
        public void agentStep() {% j# W/ t! ~5 a% l. c6 g8 l; [
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* m! |6 B: s" X6 h; p/ b4 i+ a        }) h6 @, n4 n1 M, B
}
2 o8 \  ^) X5 K/ o9 [) f% |7 p% q, j0 ~3 Q- R; T
public class ActionGroupDemo extends SwarmImpl {5 d' g5 a* w! w& `/ E1 y
        ScheduleImpl schedule;
% d0 G4 Q9 w8 L9 y% x3 h        ActionGroupImpl actionGroup;. e$ Z* R1 h. Q* }/ ?
        ListImpl list;
! g; N, P1 }6 V2 l        char Id = 'a';
& L( ]+ E% ]3 r
$ d1 d3 ^8 B. v% O6 T- b! V        ActionGroupDemo(Zone aZone) {$ @8 B, o$ C5 j/ f
                super(aZone);0 d9 [/ @. t. x8 D
                list = new ListImpl(aZone);
5 m4 [6 {/ l: |$ S                swarmSetp();
* k" x- g) j" t7 F/ Q                actionGroup = new ActionGroupImpl(aZone);
7 H9 W& _6 `1 ~) p5 _                schedule = new ScheduleImpl(aZone);* w7 \$ w9 ^% V4 H! k/ [- A
                try {  j0 h% p: |- ]/ q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& \2 I$ u$ T6 C# w% V3 z' s- a, F2 M% H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' @1 e9 T7 {/ |3 v! c( B
                        
( Q+ \0 ?2 d. c' T; s- O" d                        actionGroup.createActionForEach$message(list, agentSel);# A7 I$ z1 C. v! M/ T4 K
                        actionGroup.createActionTo$message(this, swarmSel);
/ g' j8 ?5 g' b3 n' ^2 ?                        schedule.at$createAction(0, actionGroup);; k4 Y. m8 K+ k9 H* q% T
                        schedule.at$createAction(1, actionGroup);1 J3 C6 E+ e4 `1 J1 Z, X
                        schedule.at$createAction(2, actionGroup);
3 c7 L6 \& o6 \' D8 }
+ u2 x: L! D4 a                } catch (Exception e) {; @' o9 n, ?# K: V0 G( b
                        e.printStackTrace(System.err);
7 D: Z, K1 }  V2 ]' I" I                        //System.out.println(e);
1 K* Q8 q2 k6 i7 ^2 L                        System.exit(1);
" P5 l( ?. e! j! r                }
1 R1 @6 o) B- k, \# v4 q1 O2 i5 Q/ y4 r# n
! ]; w$ o! k* @7 ~1 \
        }
6 Y0 v$ `, ~9 i7 C9 [9 C4 J& Y9 b; a1 a
        private void swarmSetp() {) N5 D- z8 {  {7 x; C% r" i* \6 m( ]
                list.addLast(new Agent(Id));' l& _+ N# h( K$ o" D. k
                Id++;
$ U; g6 F$ |5 X. P) C8 Q        }" M: `1 w; y. o3 D8 q

, E7 C) o1 Y/ [% S1 y        public Activity activateIn(Swarm context) {) _# q% |! S" v3 L: Y( Q! Y/ f0 b6 k! ?
                super.activateIn(context);
& z* i  M4 l% i. A4 f0 e- O! E. z                schedule.activateIn(this);$ l, W' Y. _: Q
                return getActivity();! a% A: ^" p! c, P1 z9 U
        }: {/ K: L: D+ b& r

/ G$ ?  I% v  }, L! H        public static void main(String[] args) {: i+ c' n4 Y6 w1 y! D  b5 R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 [4 v" y8 U" D) p& u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- L( Y, W7 {7 |. _! J8 L7 _                swarms.buildObjects();
$ Y5 X2 s' }* c6 ^' m                swarms.buildActions();& d) S. @4 _9 C' y+ z  B
                swarms.activateIn(null).run();+ X2 [& \2 I9 i0 }
        }! C; S8 V+ W) b, T% n

+ V5 Q0 W5 }& m* `}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-18 10:46 , Processed in 0.017773 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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