设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11287|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % G, ?! J* v+ G3 l8 x

+ A' e7 E. K4 q2 j  A% _3 ]+ K+ P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; N9 O3 o1 p- Y! U0 Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 ?5 h! ?/ f7 y9 b1 U- P0 fswarm.SignatureNotFoundException: q4 v; y  x: g' Y/ ?
        at swarm.Selector.<init>(Selector.java:76)
6 w- A# K9 F+ P: f8 p9 j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& J0 a' }/ p& u# O  t, c
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ z, p" }. Q9 K' j" B4 Z) u7 O, _# z! K: p. P/ p$ V

( X1 r1 F) c& f$ _% `( ^import swarm.objectbase.SwarmImpl;
8 z( [, s4 z! m' s3 Kimport swarm.objectbase.Swarm;" m' W9 N) U/ c% A5 x5 ~! A) W5 |% N
import swarm.activity.ScheduleImpl;! l; S; ^# Z$ T6 Z! X' {! [  r
import swarm.activity.Activity;0 Y1 h& Q9 m; ]
import swarm.activity.ActionGroupImpl;4 B* W" v, Y  n0 z: C: F
import swarm.collections.ListImpl;' f9 K$ }; n& n" v  v2 x
import swarm.defobj.Zone; 8 ^" L# ?- ^3 Y8 C/ n
import swarm.Globals;# C. J6 ~- P/ W$ P3 H, G$ f4 W
import swarm.Selector;% J6 t6 `2 ^6 g
import swarm.activity.ActionGroup; 4 D; _$ g6 P8 ?4 n
class Agent {( i% W1 X1 A7 \6 }# H/ M9 |
        char id;
2 y. P; z' u5 k; K4 L# f. i' t
        Agent(char id) {
3 K- h3 o' F7 d% \% R/ p1 ?) C  N0 u                this.id = id;  r+ {- }0 \* w; s, S
        }# P, U# M- P- D0 ], ~
3 d1 u& A$ K- H  E! j2 L
        public void agentStep() {5 V9 o' J+ A$ F: K
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: j) H6 Q" p1 @/ u7 s, Z! w& }        }0 Q' C! D; C7 H9 r0 n- X# a
}
- M+ D$ [. t1 q/ l. N4 d; ~6 P& l& H2 m
public class ActionGroupDemo extends SwarmImpl {
' {+ p, I/ y% T* ~$ Q5 @        ScheduleImpl schedule;) v6 C( M$ Z) r: }+ A- ]
        ActionGroupImpl actionGroup;4 U9 N: Y" h6 ^
        ListImpl list;
4 t% z7 P) ?/ T/ {& W; B        char Id = 'a';
) V1 D' {+ l# c* \) Y4 V
( l$ G: V3 Q8 E2 r5 M        ActionGroupDemo(Zone aZone) {) ?3 ?+ D% x) y- o$ s! f/ V
                super(aZone);
3 m( p( X' w6 `$ Y' j                list = new ListImpl(aZone);7 y( i+ m/ M! O" }( \5 g
                swarmSetp();
, B/ p/ Z0 D6 U3 A+ e6 `                actionGroup = new ActionGroupImpl(aZone);
7 G% g, ?2 j$ n0 D3 u                schedule = new ScheduleImpl(aZone);9 O- L! V* `8 N7 B/ F0 ~
                try {
5 s+ @* `7 v  G0 U) n% A$ D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, v1 A: \1 C6 R" b5 r
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: n' f1 W8 U( M6 k  p( F7 k
                        # f; m  b6 t6 _$ A" A: a8 C0 {! `
                        actionGroup.createActionForEach$message(list, agentSel);* C, R, e, W6 S5 ^) A% L/ p
                        actionGroup.createActionTo$message(this, swarmSel);
* o+ z% E: O) t/ N                        schedule.at$createAction(0, actionGroup);9 q% _: t( n9 K: o* j0 ^( d3 }
                        schedule.at$createAction(1, actionGroup);
( e; b1 T. c8 N$ k                        schedule.at$createAction(2, actionGroup);
! L1 o; n! }  ]8 \! |6 `% B# i, r, t7 \1 ~5 }& D. Z0 [
                } catch (Exception e) {
( g' s( [+ @6 D- Q- w                        e.printStackTrace(System.err);$ x# i3 ~6 ?7 [% _! I
                        //System.out.println(e);. E' Z9 ^- y7 ]; R+ W
                        System.exit(1);
  t$ V1 \# f1 Q& }6 R. ?                }
7 e- D7 @, a) z, y( b! c5 n
+ w& q- V  d( J% z5 {$ g, x, S# E
        }
: L5 S) T$ [3 d' p. e5 v: b( K! M6 l1 G+ ]6 c
        private void swarmSetp() {: \$ J6 ~6 X  ~
                list.addLast(new Agent(Id));% G# n& V0 q3 p$ A; J
                Id++;
4 `9 {* v$ z: X" I; M( y6 D  |4 a        }
; L; A1 ]: c& T& ?! a8 [4 G) n4 n& x5 o1 F
        public Activity activateIn(Swarm context) {  v5 u  Z2 T4 j6 y3 t; d" j
                super.activateIn(context);" h4 F% H/ p- t7 v
                schedule.activateIn(this);5 {- H) l0 S9 P9 c
                return getActivity();
1 ?' Y# `' G5 r( f  l0 y) S6 V        }" I$ u- G/ @7 O. r; l

( |6 Q/ C2 h! s0 C' |( L7 K9 Q        public static void main(String[] args) {
& `: R$ e- _# q' l( W9 ?! ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 Z3 w4 f  g. ~3 X/ v
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ s& Q- X; S5 @' b2 \. z$ T+ o' h- N
                swarms.buildObjects();- O, d2 T6 z2 C0 W
                swarms.buildActions();
+ m/ ~. v- w$ _7 ]! Q                swarms.activateIn(null).run();
' ^5 |6 V! J" c        }
0 f' D/ J2 d& B5 c! v
5 ?5 H4 D% C9 r, N; r8 W}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-8 11:08 , Processed in 0.014821 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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