设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9655|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' R9 ~2 n3 b2 K. F+ z% z2 N7 O! W, l0 O; a7 t3 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 `  x4 }  ?8 V8 d. I* R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ R& n& D6 z, n' N/ H
swarm.SignatureNotFoundException
" n# a3 R" j0 ~1 N: X/ |        at swarm.Selector.<init>(Selector.java:76)0 O$ s5 ~" x0 G9 b( E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 J7 s! j3 w4 ?$ h" e        at ActionGroupDemo.main(ActionGroupDemo.java:67)! G0 z6 Q2 L3 X

; H. R8 t, h3 K" Q
7 c5 y9 [/ A  j  q0 i9 C! B3 Aimport swarm.objectbase.SwarmImpl;. [, L% |4 b. \0 P. A. P+ ]
import swarm.objectbase.Swarm;2 S; x! S" H0 z/ A: f
import swarm.activity.ScheduleImpl;  b, a! [/ G' D8 N
import swarm.activity.Activity;# S6 A3 P2 Z. u& j& k, h+ H
import swarm.activity.ActionGroupImpl;
* S3 X. b3 q; n8 \( L( oimport swarm.collections.ListImpl;
1 t3 ]: b4 {" J8 L& M) R  Rimport swarm.defobj.Zone;
+ b: v/ h/ V, s/ h& k. U) Vimport swarm.Globals;
! N; ~# q. ?; A$ Gimport swarm.Selector;* X% X3 \% i4 J- a- [( ]
import swarm.activity.ActionGroup;
7 E# a$ ]! g  S, u+ }) G/ Sclass Agent {
; W$ z3 }5 m8 |        char id;
- y3 Q* T$ W, i$ M2 Y* q: L) o  b2 e; k, h
        Agent(char id) {9 L) S; u1 I2 B: G" D+ A
                this.id = id;+ h) D/ r) |9 s9 c
        }# v$ \7 E# X/ Z, ~: ?2 n% _* g0 s' u

/ a0 y3 M. T" i6 n        public void agentStep() {
, x8 O8 j/ x7 F7 t( k                System.out.println(id + ":" + Globals.env.getCurrentTime());( m: W, S4 N: ~9 o+ Q7 x' S
        }6 `/ O) I, v5 [- Z
}
0 Z# F! |, v! D6 [0 c' H3 g) `8 ^1 }
public class ActionGroupDemo extends SwarmImpl {5 O8 V: ?7 i8 o0 S) w' T, I( t" m
        ScheduleImpl schedule;
$ K9 M% C  [- G        ActionGroupImpl actionGroup;4 m. A; k; Q* }) m0 H) H
        ListImpl list;
: u* u: n4 R, e8 R        char Id = 'a';
- ^7 }4 A% |; X  S. H! H9 U" @
7 ]( E+ R: ^/ I; K) j9 P        ActionGroupDemo(Zone aZone) {
& i4 w2 {) w5 B                super(aZone);; o- M- S; {% p1 b+ o8 j0 u; R
                list = new ListImpl(aZone);
$ d, |+ i& R, q6 m; @  D7 T                swarmSetp();$ c, [: {3 V1 f- x4 f, D
                actionGroup = new ActionGroupImpl(aZone);' m* d& D+ \+ {% e7 _0 E8 h4 o$ Z- Z
                schedule = new ScheduleImpl(aZone);
8 v, f: e& M6 ~4 H                try {, o+ s7 q6 K) H/ E3 P4 `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ N8 ^1 }3 \/ f. h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ [, ]2 B% B0 _% Q7 V                        2 t% @$ R  x# _4 f( ]
                        actionGroup.createActionForEach$message(list, agentSel);
4 ]; L' T, }; i                        actionGroup.createActionTo$message(this, swarmSel);7 n2 f) c/ z# x7 E
                        schedule.at$createAction(0, actionGroup);
+ k5 c4 p$ z1 |* g$ Q                        schedule.at$createAction(1, actionGroup);
" v/ ]; H) |! {2 T& z4 d! {: F                        schedule.at$createAction(2, actionGroup);
( F: t) V3 M2 E0 U" q, L* s/ _
) S: S9 X8 G/ T) G3 A( _7 z                } catch (Exception e) {) j9 G: o% W( h0 s- m2 U
                        e.printStackTrace(System.err);+ n6 P# U7 t  L  m
                        //System.out.println(e);2 a& v2 h' X$ V5 L
                        System.exit(1);
; V. Y- b  C9 _# }& T0 l* j                }0 s: D; j6 G( F! e% p( C& k

' T) @/ u( I% @  j7 I9 X& z$ r
. ~/ W7 K$ H  h4 K+ C* N4 z1 |6 o        }2 S" M& w  i7 d) y' I& J* K2 ]7 {

+ r, ~4 o* m5 p1 h9 Z        private void swarmSetp() {5 @9 \3 N, k( f7 `$ s
                list.addLast(new Agent(Id));
- B5 x) x( y0 ?( ?- v& f                Id++;. D0 x& [; b9 T8 p+ A  g( b
        }
- N4 r, `/ G+ i
; k" L: [9 Y5 c        public Activity activateIn(Swarm context) {
  g) q  @; }- ?4 o* u5 g                super.activateIn(context);! o: u5 s- c: z5 K5 v6 C  P
                schedule.activateIn(this);
% d* S$ I0 }& e; V* O5 S- _                return getActivity();
3 g0 t$ W: g  R: R$ F        }# c$ B' i0 D% P3 W

$ V: L$ Q- x  G% x8 s        public static void main(String[] args) {" `! M2 x9 u& W5 o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. B* \) h( `3 H% v$ Y9 z8 |- G
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* B- _! @# X: H' l& q                swarms.buildObjects();
( V9 U& [. w! i) S                swarms.buildActions();
+ E, t/ p( Y9 z                swarms.activateIn(null).run();- S" L& N) V7 t# L0 E+ U
        }. |3 m4 Z# ~2 q0 u

% c: B; P7 ~  _8 o9 z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-18 10:20 , Processed in 0.022131 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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