设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11487|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) g: w# h: H& e: u8 b% c

/ b. |* T( q/ b9 j+ a* V  |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' t5 S& A5 \2 v9 |" Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# y. ^: @7 ?) A2 D. U. B
swarm.SignatureNotFoundException; ^; E  S. f& w; }/ {0 S- y
        at swarm.Selector.<init>(Selector.java:76)/ U8 Z5 L8 e% P) ]7 p
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* u- y9 p- f4 b3 D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' h9 b; y9 [) O3 B  Z

' W% s, \( i8 R
8 G+ C  \  D2 c% g9 Z; O+ M; rimport swarm.objectbase.SwarmImpl;2 K9 @8 @. g( f& U. M
import swarm.objectbase.Swarm;* y! T& O5 r$ i% }$ x: w
import swarm.activity.ScheduleImpl;
( l4 O4 @- z8 }2 n3 ~: vimport swarm.activity.Activity;
0 n+ E% g5 E9 vimport swarm.activity.ActionGroupImpl;
& u2 X) V3 t) Q3 d- w, A' yimport swarm.collections.ListImpl;7 |& H+ N2 P+ ^& h/ s  P
import swarm.defobj.Zone; 8 h: O( E: O8 ^4 J! B  U1 B5 H) |) E
import swarm.Globals;
* ]' O9 H& U/ a  n2 f0 Y- F* qimport swarm.Selector;2 [5 j9 f/ g5 k( V! S! @+ x) g
import swarm.activity.ActionGroup; 3 _7 J4 U, |* g
class Agent {
8 v+ h# c' }9 M& M$ O        char id;
1 }3 s0 M- r7 ]: b" q
4 \6 W, \* W; d4 W9 G        Agent(char id) {
5 o6 P- M: U7 b5 y& t3 |0 U                this.id = id;
) Z) Z% q; b1 D& }9 C2 @/ r# W( ^        }7 M1 K; z  F  H

4 G' Y/ S% L) |: u! p7 S/ D$ g        public void agentStep() {, K# `$ z  b% e) r+ s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& h/ K' m$ P' u- \9 s        }
+ K6 Q  ~- r: R  V% ~8 t; o& K}* n5 a- K( T, e  \2 L' H( S: c
- q! H$ G1 Y6 m3 Z5 x+ Q" q
public class ActionGroupDemo extends SwarmImpl {5 Q  Q  r1 E$ \! V5 o" {- a$ k
        ScheduleImpl schedule;
3 d: B9 U1 r+ H7 i4 |+ N        ActionGroupImpl actionGroup;
% \/ [0 p& a+ Y! F+ t, L# G: J        ListImpl list;# r( r, s- b1 ~
        char Id = 'a';5 O5 u% r8 ~, o
$ t; L# t$ V; O8 q
        ActionGroupDemo(Zone aZone) {& q! R1 I; r! f
                super(aZone);
  w7 ?5 {8 U5 T                list = new ListImpl(aZone);
7 }; O/ A  }+ [- i8 i  l4 T                swarmSetp();
) d( H1 m0 l" x* C* [3 [                actionGroup = new ActionGroupImpl(aZone);
9 Q0 I9 F: @/ b; v9 ^9 W/ C                schedule = new ScheduleImpl(aZone);4 ]' L0 q- [4 q+ h$ t: S, S
                try {
$ O& N6 H) |& I% @/ @5 g; O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! A9 c3 B8 {, W3 G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; |3 N" c8 N4 j" Y
                        
) O9 D5 H8 G) \& u                        actionGroup.createActionForEach$message(list, agentSel);
& u2 m' O8 A6 A0 }4 W                        actionGroup.createActionTo$message(this, swarmSel);
! ^( f# r2 j7 X6 a8 I' H                        schedule.at$createAction(0, actionGroup);
/ x' S9 A/ l' y! Y7 Z3 e                        schedule.at$createAction(1, actionGroup);: N+ Q/ r0 w8 a( s/ t: f( g1 _
                        schedule.at$createAction(2, actionGroup);
; [0 B( r8 u( E7 d4 s3 U* n) W) ?- w
/ x& T* S/ e4 v/ Y4 R# ?1 X: M0 \                } catch (Exception e) {- e& ]! d  z: X2 R1 q2 u
                        e.printStackTrace(System.err);/ @0 [* r0 T+ X: H5 u8 i" @6 y
                        //System.out.println(e);* C# |; F5 X( c, b
                        System.exit(1);+ I$ j# `: T/ I- o/ I( B' {  Z( D
                }
. B0 o2 d3 I' N  i% ^! n: D. U! M4 G3 n+ D; F1 f
) a: G: ]8 L& O$ Y: X6 D" D# X+ U
        }2 E# B. W) b4 J; _( P
- ?0 U( @& L1 A
        private void swarmSetp() {
8 Q/ H. |8 X7 D. n9 @+ |+ X                list.addLast(new Agent(Id));
8 K* ^6 r9 s1 E+ ~7 {                Id++;
4 u2 n5 G1 h2 @) h: G        }" J& u8 w4 y8 R/ T! }
! G. r6 G! c) @2 h
        public Activity activateIn(Swarm context) {( v, G: y# P) a3 E
                super.activateIn(context);6 Z1 @) y% m/ e# N9 O( E
                schedule.activateIn(this);
! C. B1 B* `2 X( C9 P5 s' C                return getActivity();
0 p) h: b: D; i! M4 Q) n        }
+ M7 B# ]" T9 H* v- `" s- R# J! H9 _: W) i" D
        public static void main(String[] args) {; K$ I) Q5 I+ H% H
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 ^, F* o9 [% g4 l! ^# ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ U. I8 v; u7 [- `" q
                swarms.buildObjects();
8 _9 a& d% ~; s                swarms.buildActions();; r3 }% W7 O( q' j  D: d8 e
                swarms.activateIn(null).run();
1 w% T& Y0 W, l/ _& [- i7 _        }( M9 D! y. l0 Z! D7 P6 X

, l, j$ o- `: g0 @2 n0 Y4 ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-13 20:51 , Processed in 0.013669 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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