设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7444|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 b8 _9 H3 B/ |* q, {4 N( m" T: s& _  x6 q. W3 ?6 U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. k, E. V( y( P: K5 ~: {* c% ?8 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. i% |3 g! N: `; [% Vswarm.SignatureNotFoundException& O+ x6 _& F) [( i( n
        at swarm.Selector.<init>(Selector.java:76). G- L1 b9 T( Y6 W* C0 K: k: \+ |  b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 Q2 V  _% r* G. W' `. A5 I# Y+ Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* A3 Z6 @/ E3 b; q7 ^+ i# _
+ \1 T( L3 F# H" |0 u  g6 d; C5 p4 C5 S( D" h( m
import swarm.objectbase.SwarmImpl;6 L. j9 [2 T. ~  W& q0 X
import swarm.objectbase.Swarm;
* F3 N4 K; m0 c( k* A7 p6 dimport swarm.activity.ScheduleImpl;
# s; |) V1 ^7 z: T5 E: r  Bimport swarm.activity.Activity;( D" c) T2 Y9 W
import swarm.activity.ActionGroupImpl;7 X2 S0 h  V) y9 }6 X- c
import swarm.collections.ListImpl;# ]7 v1 }0 |) m$ o# a. O5 Y
import swarm.defobj.Zone;
5 f: {+ S0 k6 B, R% |# y$ f% Oimport swarm.Globals;
# k; t2 x/ R1 n+ Qimport swarm.Selector;* L( c+ ]) q9 K) Q( A' d
import swarm.activity.ActionGroup;
7 T4 `9 w& E. sclass Agent {
( W6 t6 `; z- K( B  T3 s; j# o        char id;
5 }8 j* U9 Z1 H9 o" t. Z# w7 n4 {7 g6 r+ B' `0 V3 b# H
        Agent(char id) {
! n2 q) b' E1 |" T  O/ I                this.id = id;! D" n6 p9 [9 \- g
        }5 U8 u% B* A8 [2 V

  O9 L5 S, `% o7 t% \/ Q8 p        public void agentStep() {/ r/ n! g- |; C6 M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
' R* n) [6 D" }5 c4 u) H        }
+ V$ }7 U% F" W5 W* S9 Q}
$ `0 R7 [( f; K6 I' Z% ~+ |8 Q
7 U2 f9 X) j5 k  J$ ^public class ActionGroupDemo extends SwarmImpl {3 i/ |# u: }0 ]. o2 z6 ~7 Y
        ScheduleImpl schedule;
: b5 x  Q9 E: W. J. A        ActionGroupImpl actionGroup;8 u: E* l& u% x0 ~+ \( p
        ListImpl list;
$ b7 ?2 v/ E/ N0 G$ M' ^7 o        char Id = 'a';2 i9 E: [  d1 v* ?$ ~* }6 I# @7 A

/ E' @  o5 W0 _; z0 x" X        ActionGroupDemo(Zone aZone) {
. @2 V* t* ]& x                super(aZone);6 R- J" G5 f- U, U% K& B- p
                list = new ListImpl(aZone);, ~1 e5 J" {4 N. C) ^, j6 A
                swarmSetp();" S  l- `3 z3 A, z2 ^/ U
                actionGroup = new ActionGroupImpl(aZone);- a. G5 L3 T6 U2 d4 f' v2 p
                schedule = new ScheduleImpl(aZone);
. i; d5 l1 s7 {$ K; _! L- N$ ^8 P                try {
) z; h* {$ w$ J1 G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: S4 w% r4 ?% n- L% Q  d  }6 X( x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 \: F* t& Z% [0 Z0 E- _; D# M
                        9 r: B. _! m0 p
                        actionGroup.createActionForEach$message(list, agentSel);/ M3 Q2 j' i2 I
                        actionGroup.createActionTo$message(this, swarmSel);
7 w! ]' ~! W$ b1 w- P% H  w                        schedule.at$createAction(0, actionGroup);- J* u+ t- [; E9 O- U% K* @
                        schedule.at$createAction(1, actionGroup);
5 h" ~  u8 w. ], r# Y8 u                        schedule.at$createAction(2, actionGroup);2 B. k" Y4 \- D! x+ t& G  S) s
+ M" t  G( A8 l9 }+ [% Z
                } catch (Exception e) {( C: G4 }3 O; K. k5 `* R/ Q
                        e.printStackTrace(System.err);
' p. v% L  ^& D1 G, k+ W; c5 x                        //System.out.println(e);) H# ~% h% y, p
                        System.exit(1);- L' x9 m& G, {. \+ G7 X8 {  P3 g
                }
" L8 j) X" a$ \( h* M7 l& v
1 _8 J2 |, o: ^5 W( g
* [2 `# U1 `6 Y+ h! Q        }" Z, \( P2 b% U$ {8 e8 a1 @! X

& s( c3 I+ J, \& S& w        private void swarmSetp() {  b; {4 z& x% q& [$ j1 Z! d
                list.addLast(new Agent(Id));
1 \2 Z5 Y/ a( X# W! K/ B8 o+ z  E                Id++;% W6 x8 L5 E8 I1 c/ ?9 u+ l0 I. _2 C
        }0 N5 ], `6 }8 I/ z, B( W; n

' b0 N$ d. E: n2 J) q( t        public Activity activateIn(Swarm context) {
, z4 Y" c/ P0 k; r                super.activateIn(context);) N4 B1 p" C+ V( _4 ]6 M
                schedule.activateIn(this);
' `" W$ A- f2 z6 m) ?2 E                return getActivity();
# q+ K% k3 U& `" l) q( z8 t        }5 D" k2 l) M& C; c

9 f1 Y3 f0 z$ D$ x. d        public static void main(String[] args) {
9 \9 w3 h( D' J* x) H* `1 ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& b) E. }3 Q. Q% I' w/ v& @                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 R3 ]2 a4 S( b- T
                swarms.buildObjects();2 w9 _  J8 R& s; T- Q
                swarms.buildActions();
7 Z5 x! T) n( R# H                swarms.activateIn(null).run();+ N8 k  w! [* \1 T- ^6 V! Y
        }
7 c  O5 y- j8 d- o9 D" J
3 _: |4 W$ K7 w9 [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 21:54 , Processed in 0.014137 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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