设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10767|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 }& l: {. y# [: k7 X& ]  N0 k. R# S& I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) B4 P, @5 J% D) Q( H0 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- z# J5 p# V5 @! l0 p, |
swarm.SignatureNotFoundException1 V* X: Z$ A8 E$ |7 I. e
        at swarm.Selector.<init>(Selector.java:76)
2 Q2 F3 T- x% n  K% k  p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 n3 J1 k, C, L. e/ u( _
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( ^+ @9 t. o, D$ a
: X+ }, [3 Q/ i: S  f

8 h' t# I: D) v0 i: G! n2 E& Aimport swarm.objectbase.SwarmImpl;4 C: `, |% h& c$ j7 X3 ?0 {# z
import swarm.objectbase.Swarm;
3 d4 |* S, ]; R9 F5 i( _( @4 _import swarm.activity.ScheduleImpl;6 Z+ v$ a, y3 m; P9 Y
import swarm.activity.Activity;  T' A* U6 d6 S0 C$ ^% t' M
import swarm.activity.ActionGroupImpl;% l" A8 I9 A1 k+ S! J
import swarm.collections.ListImpl;- b; n$ b7 d) G& g* t) z" A
import swarm.defobj.Zone;
/ B$ F5 Z3 U$ z8 }1 Qimport swarm.Globals;4 m! c) P0 d# U9 ~7 y# Q
import swarm.Selector;4 K% S0 e" r5 e5 ^/ l0 G' o
import swarm.activity.ActionGroup;
/ T7 f, m: [/ f5 O9 E9 ^class Agent {3 q. c$ U# {( W
        char id;7 L! }/ F* V$ A+ `! S
+ a( g- T. d; d& ]; G& z
        Agent(char id) {
- R* u9 R) t/ Z( e% n                this.id = id;/ T* P7 b: T6 }2 Q2 E' w/ f
        }9 h+ w8 {( |, N

$ E+ f9 }9 ]# r+ D' s8 F4 T        public void agentStep() {0 i" \1 t# e* D& ^' J
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  Y- O% J5 W" Q        }
( m$ \3 S+ Z: o  L" }! u. b- `}
/ Y. `/ j7 ~  C3 C$ m4 T! s- ?; M9 c3 t. S9 A
public class ActionGroupDemo extends SwarmImpl {
3 \- V# b  T+ t7 [        ScheduleImpl schedule;
- K; [  A+ x3 M% G% N        ActionGroupImpl actionGroup;6 U) Z. t( }, y
        ListImpl list;
5 v& G3 Z' k$ W' H2 r  _, k        char Id = 'a';
: U; R. l' B5 H, K) R; [. i' R% H! e5 Y; n6 D* E
        ActionGroupDemo(Zone aZone) {6 ]- K/ ]! P. V- h6 z9 n
                super(aZone);
& {3 M8 g$ T6 ^. T                list = new ListImpl(aZone);
# W6 o* [5 }4 u                swarmSetp();
2 m9 r$ v  b' b+ p                actionGroup = new ActionGroupImpl(aZone);
# \8 h- r+ B' o$ h                schedule = new ScheduleImpl(aZone);
5 W6 {% j; u5 f/ }4 \7 f7 V- s5 X                try {
+ l$ x/ M1 d5 c( Q9 j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 r/ j/ u  V- H& x) v
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& e6 {# T$ y' Y
                        # }7 g9 b0 Z, G
                        actionGroup.createActionForEach$message(list, agentSel);
1 A# g3 r# U" X, k: B" w                        actionGroup.createActionTo$message(this, swarmSel);
( R" l1 G& {8 T9 q& \4 J                        schedule.at$createAction(0, actionGroup);5 [: v0 R/ g4 ^# J. B
                        schedule.at$createAction(1, actionGroup);
8 b+ H% E; y9 f  [9 m) i! `) e9 o                        schedule.at$createAction(2, actionGroup);+ t% X: {+ O5 ^1 v  d( c
; K/ [( @- Q7 B$ ~: ~4 z
                } catch (Exception e) {
# [2 V! r# d0 P8 }( s' E7 L$ h                        e.printStackTrace(System.err);
. c# j# w7 G) T4 s1 A7 S# K5 P0 k                        //System.out.println(e);  L# Q8 X1 O- |$ L! W
                        System.exit(1);
  W5 Y9 u: F- G' D8 `                }9 B( z2 T4 ?! N! \! O# c2 G7 Z5 r

9 w: \; y% R6 W9 Y; ?  ]. |. b' O6 k% V9 o/ E. K  C- p) e% B* a! o
        }
( ~! z) ]# e" d, Y
) W) I4 X9 T; y) I0 D; P        private void swarmSetp() {
! i3 R3 {9 v( C' |                list.addLast(new Agent(Id));9 r8 _+ F: d. K+ o3 L- I
                Id++;
% F& f7 G/ z) J  G9 h        }
1 {4 m7 Q7 F" N
% @& j2 e5 ^1 A3 v) D        public Activity activateIn(Swarm context) {* B# n* {- [# X
                super.activateIn(context);. y- C4 h1 }* I. E. ?
                schedule.activateIn(this);
( N0 G- [" B5 H- {- @                return getActivity();2 O- z+ k6 i4 B' i: W
        }
* V* z6 w1 {& r0 m6 z: b. m3 f1 `# t
        public static void main(String[] args) {+ w/ I' u. L2 w2 I7 {$ e  j/ U/ n; q5 E
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# U8 B8 _* y/ {* |$ p9 ~+ c5 N- G3 m1 A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ m# M; s% p3 Z6 Q" @3 Y2 f: G, b
                swarms.buildObjects();& k+ p8 D. G4 |  u( @  l, k
                swarms.buildActions();3 n! b; E! H, w5 }3 r9 i
                swarms.activateIn(null).run();
: m! A- d# j+ b- O: m        }
/ E' Q8 D2 w- s. M# V
% u0 j4 w% m. T2 D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 03:16 , Processed in 0.013027 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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