设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5316|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 J3 X# V3 F# m, h$ F+ i8 _, [6 o" y( N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) i- k* s5 g: A" O1 U& T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. V' f# W( h/ H( Hswarm.SignatureNotFoundException1 }1 B3 I' E  [( |# |
        at swarm.Selector.<init>(Selector.java:76)0 P/ ~7 u. o. z1 a+ B! O9 |
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ N2 b0 y' b# t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 u4 j4 f+ v# C8 I# o
& {! ^. v/ m) c& U! @$ M2 }
) ^2 [0 f, s. u5 q. r, P1 F2 a
import swarm.objectbase.SwarmImpl;
- I4 ~7 K8 B+ A  h; @8 _/ f. {import swarm.objectbase.Swarm;
4 E" p4 W$ c% `% e# R; _/ nimport swarm.activity.ScheduleImpl;
5 {+ N* x9 D0 V. w; c2 l* K& kimport swarm.activity.Activity;
# L# \3 e' R+ ]. A+ B1 Oimport swarm.activity.ActionGroupImpl;) d( p! I9 P4 D% T7 @) q6 h
import swarm.collections.ListImpl;( z5 b! d: f8 t; [
import swarm.defobj.Zone;
! @" G7 V* p7 |1 j" r: C) Kimport swarm.Globals;
% {8 C- ]/ Y5 Z) E+ yimport swarm.Selector;
% Z% T; e& s" ~* H% @import swarm.activity.ActionGroup;
+ t" |; U& E. ~# n" cclass Agent {2 ~2 \1 i7 j8 n5 s6 k) ?4 `9 y
        char id;. v; h% @0 F6 a% c5 K; N
2 t# n! y+ ?5 I) J
        Agent(char id) {* g4 a: x' b& w. |; C6 ?) {6 i
                this.id = id;# s, D- g( \7 J+ l( m6 t0 T+ n$ J7 ~
        }
0 {& `, n7 T5 Z5 q! R' ?+ o% ^1 w& V
        public void agentStep() {7 F6 t+ L# k; C0 S9 a) N
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ f5 Z; x9 p2 t4 b. p        }
, I9 Z% z9 H( R! }" c5 Z& M}0 a; q2 ]5 d, f# k

- |& }) m: w, E) n$ {! k( U% U+ ~3 bpublic class ActionGroupDemo extends SwarmImpl {. ~, ?0 m3 K# q' E  E
        ScheduleImpl schedule;8 k+ i2 L6 U* ~1 y3 C& }
        ActionGroupImpl actionGroup;
: \( U  ?- k- v& a2 w( N4 {% t        ListImpl list;1 h& e+ i6 L- ^/ `' N8 Q' c5 z
        char Id = 'a';
/ c* x, n! j! ^6 f) {+ E( Y" M* q& z4 x: o" V& a4 [8 Y
        ActionGroupDemo(Zone aZone) {. T; `; ^: L( W
                super(aZone);
% g+ w/ {3 @( z, M9 B                list = new ListImpl(aZone);
3 v: G* x  G0 C. o/ i                swarmSetp();
' R/ O/ Y2 h5 M" v# K                actionGroup = new ActionGroupImpl(aZone);
7 ~& [# j/ u/ j& w% d                schedule = new ScheduleImpl(aZone);6 z/ E, C/ @( Y  J) T
                try {
. \9 m( U9 g- y8 ?5 E$ U! E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& K8 P0 i5 ?, W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 i8 E  A$ G6 N, D; |7 w1 |                        , V$ q/ A4 G2 S
                        actionGroup.createActionForEach$message(list, agentSel);
; T# O" S  N- E6 x- x                        actionGroup.createActionTo$message(this, swarmSel);6 }3 }# R  b8 z2 q9 p7 E" b) R2 |
                        schedule.at$createAction(0, actionGroup);- }) g" H9 _3 E& H! I
                        schedule.at$createAction(1, actionGroup);% `9 Q% Q! Y) k' L
                        schedule.at$createAction(2, actionGroup);
( Q- w4 H8 p; x4 X0 ^( n
( L. u; r0 K; q: \* W3 ]* Q                } catch (Exception e) {5 l( Y& r! |! \" ?' Q0 l$ x
                        e.printStackTrace(System.err);9 r8 |& x" j1 o
                        //System.out.println(e);
5 }" Z% a; H6 ^8 c1 k  ?                        System.exit(1);6 G2 a8 m! Z5 K% l
                }
0 b' L2 s4 g/ J3 H
! _6 S+ H7 i" p& `( e, M
  Y" J; s& @8 ~$ \        }. l8 C$ e( a1 r! y: P3 W

( t( U- H8 s. P" Y4 z1 c) \7 b* }        private void swarmSetp() {
# m# m& F8 ?5 ~6 h1 C                list.addLast(new Agent(Id));1 B# I, c# V. i: {7 n
                Id++;
) G7 r1 N1 h) C: G        }
- y$ r0 y. J% Z9 {* x: L5 i: C: m' J/ m$ e- k
        public Activity activateIn(Swarm context) {2 K2 c: s& K3 k! j( j" ?
                super.activateIn(context);
$ f' ?% f  J3 W8 G                schedule.activateIn(this);
5 n/ }# B" {" A, z% G                return getActivity();" W7 \8 G2 a" \7 o
        }3 t8 F8 H* Q$ U$ l9 y

3 c9 q# E# Q& t7 J9 P0 b        public static void main(String[] args) {/ I* h; \2 d' F$ w' ^% M
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" E7 Q! O& m' K7 t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 ^/ R& v2 h. c
                swarms.buildObjects();
% S, ~, L& D" q0 p                swarms.buildActions();/ ?  t. J3 h% r9 Q) \
                swarms.activateIn(null).run();; u7 @6 U2 G! R0 ~
        }/ {) d& f: U! V1 w; x$ X

! i5 r" }1 Y) l* T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-3 20:53 , Processed in 0.022537 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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