设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10742|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  B9 V; r& J1 b. n( O* E) u: I: Y' s% y/ ]0 b) o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" n  J9 M0 |; j: Z2 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 M5 l) ?5 h' m7 c2 w! j+ A
swarm.SignatureNotFoundException  C' k+ g% }! K* {8 |5 u
        at swarm.Selector.<init>(Selector.java:76)' j! t6 F( J9 M6 S$ Z* z6 s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 Q1 @, K5 U1 z2 `% C
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; B( |% h6 `# X4 Z: y: L0 w& r% m2 k" F) E% {

( g; _0 p' g, v2 c- R( q9 W# T- ]" pimport swarm.objectbase.SwarmImpl;
! R. f2 J, O" V: Z+ m. Y6 S2 X7 Oimport swarm.objectbase.Swarm;
$ y# ~4 y2 i% Q" g* w; W2 |- D# Wimport swarm.activity.ScheduleImpl;9 d( ^9 t: L% r3 F: z# a7 I
import swarm.activity.Activity;
) ^1 ?7 F  V. @9 W5 M+ a0 H1 Cimport swarm.activity.ActionGroupImpl;
: T% {* d: ?8 {) t: ~import swarm.collections.ListImpl;7 j! x; n/ ]$ s6 c, k8 d* \
import swarm.defobj.Zone;
/ o6 W/ c; l/ ]$ e9 S- nimport swarm.Globals;+ z5 k, O8 Q8 U; Q6 Z: n9 B* [9 x
import swarm.Selector;7 P4 N. ?. F  e7 c8 h2 L4 A
import swarm.activity.ActionGroup; 3 @2 n3 M2 Z7 n% z6 m: D# O& P- F
class Agent {
4 `; ]) I8 ^" h! i7 h$ k        char id;
4 Y9 |7 m, T% g5 ^( g
$ ?7 P" E8 R/ l) ^        Agent(char id) {. A8 I* C6 ~6 V5 @
                this.id = id;
5 P# X0 B7 |; w. r; l        }
! g3 |- Y& X( J! U+ G$ \9 k2 K* k2 c* }! l: X) H2 Y& x5 O
        public void agentStep() {7 o& `: w" P/ \! |
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 R3 c8 f% Q4 |3 ]+ T3 ^: L
        }
0 D  m, V" |6 I, P# ^* F: s/ E% J9 d}
/ w8 {3 O6 \' P2 X! ^* @$ H6 A& W, F: F
public class ActionGroupDemo extends SwarmImpl {
% C/ ?  M0 _( t) c( y( h8 K        ScheduleImpl schedule;
- A8 l! n* Z* d3 E3 V. u4 l        ActionGroupImpl actionGroup;
& r  f- c9 z- q5 i        ListImpl list;
# C3 d1 t4 l1 }5 t. \. |  s0 u& I        char Id = 'a';2 J& p6 H1 G$ B0 Y( U/ h

  z. B- N- w* ]* f        ActionGroupDemo(Zone aZone) {
) g6 F% I( d) U                super(aZone);" A# e" n$ ^+ A. m: o
                list = new ListImpl(aZone);
$ i9 w* p0 _+ `% h4 m                swarmSetp();
9 ^1 U# A2 b9 I  {3 G                actionGroup = new ActionGroupImpl(aZone);( j8 o) M3 r- m1 z! W( z5 s; n
                schedule = new ScheduleImpl(aZone);. m( s# W7 w: U$ n
                try {. d: o% [: Z0 e. \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( A9 ?* {: J9 q" B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) u$ `5 d# O$ A! ]                        
1 b0 k' S* _. g2 u* U. a1 a                        actionGroup.createActionForEach$message(list, agentSel);6 `9 X% H3 P5 W
                        actionGroup.createActionTo$message(this, swarmSel);$ R0 O  A" C) G6 q+ H
                        schedule.at$createAction(0, actionGroup);8 O; Q/ f" b' y* u2 K9 q& p6 z" b
                        schedule.at$createAction(1, actionGroup);
& D/ t  c7 N" \6 H) {                        schedule.at$createAction(2, actionGroup);
& `* N% _& I/ X+ t9 {$ |
: q8 n2 k8 Q: d. Z5 h5 S( H9 ~                } catch (Exception e) {" Q6 \$ N8 y! u- z$ ^7 e5 S
                        e.printStackTrace(System.err);
1 `' m, g$ G  i4 E                        //System.out.println(e);
6 W1 u- Q. `) e% B4 U                        System.exit(1);
8 e  t0 `( r, m$ p: Z* [                }
# P) S; S% f+ Q0 W$ z
! ]9 E2 E/ L" }: x- B
2 L" U  G0 m$ s; S$ j) M        }
4 J  y" `) B% g& R6 l4 a8 w; V
; K; P+ V+ f% [/ m4 i, ?4 z: e) y, k        private void swarmSetp() {
8 t" }+ j& C$ [) x                list.addLast(new Agent(Id));
6 t& z5 x8 b8 F5 b! x                Id++;5 z2 i6 @) ?8 Z& A
        }8 [0 k" }0 U8 R& h( G/ C% Z2 l, F5 S
5 Q+ f! }. W) @7 ^1 l0 A" H( s
        public Activity activateIn(Swarm context) {
0 ~) h0 m. r9 M, y8 A                super.activateIn(context);
% ^7 x: s& B" }9 I6 A                schedule.activateIn(this);& U+ ]- _- a% M$ X
                return getActivity();+ c4 \( _" f1 @: B% A& d: h0 Y; \
        }& H3 ^+ }3 d5 B0 \% {* J
. F0 ^6 F0 \0 X0 J
        public static void main(String[] args) {7 P- `! H% J5 ~4 T' I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 W, V; D1 m$ D% `% S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% R% {. C6 R/ d1 {( S) M( o                swarms.buildObjects();
8 W% ]. J+ {3 `% J                swarms.buildActions();- A7 H6 x' u6 u  q  q# t
                swarms.activateIn(null).run();# q9 ?# ~( l6 ]: Q$ Z
        }
3 M6 {" j' Q- K- _. l# e8 A: S% r. G- B" P9 g1 R
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-22 09:16 , Processed in 0.015829 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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