设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10563|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' k1 h8 k, I  l

) H+ F: I- y6 u$ f+ p- ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- m2 t/ A2 D: v  p  }* c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% i- j$ E" d0 h) y$ u
swarm.SignatureNotFoundException
5 X2 m' k/ ~6 A. u" z5 Y        at swarm.Selector.<init>(Selector.java:76)
# H* X1 E0 K6 G/ @7 P. V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ H0 S* Q: l* S* f# R4 F% z9 Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, f1 Q! e! t' ]6 a. W6 p- F8 @% y! H
7 w* U- K3 S/ ~- E  |8 R) p
import swarm.objectbase.SwarmImpl;, M5 q) q% ]; d. T  d4 }& ~
import swarm.objectbase.Swarm;; P! K) ~6 X3 ~2 K. d) V  Z
import swarm.activity.ScheduleImpl;
0 e; Y- V$ h9 r2 A  O; [import swarm.activity.Activity;
4 I; T/ J! g* W1 @: ?) E# n( @& aimport swarm.activity.ActionGroupImpl;
+ I1 J4 v  d$ j0 E  aimport swarm.collections.ListImpl;5 u, ], Z( x3 m: Q. z+ l) I  Q
import swarm.defobj.Zone; . ^" @! _- l- y) K, m7 H2 x, e7 Z: W, Z
import swarm.Globals;9 |( J  ]3 D1 g
import swarm.Selector;8 ^. ]2 D1 @5 K# }6 M
import swarm.activity.ActionGroup;
" L/ Y" f: G7 {# f0 nclass Agent {3 R3 Y9 x5 q6 x" u
        char id;1 k2 r. y0 L2 z# u' @: Q

. n  ?5 g$ J- v4 M- @& m        Agent(char id) {
# Y4 P1 S  p0 [                this.id = id;
4 _; ~! g. N* D8 [2 N4 }        }3 A' ^' A# _: \. f, ~

/ z: I: s& }; G/ Z9 d        public void agentStep() {5 M9 \: k% _4 n3 D* e3 d; @
                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 X. B. \' J2 V" H        }/ _7 [5 v6 G4 o) |
}0 k  y# y' q2 z4 s& R: t
3 z3 g" i# Y# i/ j! [) o- s  s, P6 R  c
public class ActionGroupDemo extends SwarmImpl {7 r7 y  J( `# K' W! [/ i' z
        ScheduleImpl schedule;# I5 V4 i. T) s* H. W8 D& M
        ActionGroupImpl actionGroup;
1 t+ f2 F, K( v7 b; t        ListImpl list;) \/ H. z" |3 t- \3 P
        char Id = 'a';) ]+ R. D( J8 S

: n. A2 E- m' l7 j0 J( C        ActionGroupDemo(Zone aZone) {
. e; j$ S" O8 U3 D                super(aZone);
1 X8 e8 b" d& \5 X! F                list = new ListImpl(aZone);
: N6 M4 ^/ l7 j# d                swarmSetp();
1 D+ R3 w/ a  ^+ f2 b$ [( n$ F                actionGroup = new ActionGroupImpl(aZone);
& s2 l2 c( T9 G' Z7 V, L2 ]                schedule = new ScheduleImpl(aZone);
, g0 l; b) C6 ~7 f" Q# i                try {
: [! n" [  X5 i* u4 z; J( \; H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( v! O! A+ s! w: O; d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' m0 g' D" h+ x# f# ^' y- v9 q
                        
/ t. a) E! S2 [0 T                        actionGroup.createActionForEach$message(list, agentSel);
4 M2 x+ a1 T4 q. P$ b                        actionGroup.createActionTo$message(this, swarmSel);
7 L5 _+ T. V6 ^( f* J$ W9 ^, d                        schedule.at$createAction(0, actionGroup);
4 X1 K! s, X) i                        schedule.at$createAction(1, actionGroup);
5 p& R) z1 h; `# E2 `! d                        schedule.at$createAction(2, actionGroup);
% `- C* z8 _# H" G4 j# k+ k
4 R- t) z6 x' `1 m5 ^                } catch (Exception e) {/ \9 M7 a2 i* [9 j0 y
                        e.printStackTrace(System.err);& L' L( x) m+ k' M: b5 _& J# [1 N
                        //System.out.println(e);4 e( }: B8 t" Y7 D1 f: H) i
                        System.exit(1);6 p" ^( x# ], [, X& O% X
                }, _4 o! n: z# Z# j; b. Z
2 e9 ]! j7 Y- n7 Q
! _* h# ?/ Y: e, g* G2 n
        }
" j( d# C" `# w. y* ^. W" ]6 J6 Z6 M4 B8 l
        private void swarmSetp() {; S! V) y5 H# c* K5 |3 r. v: C
                list.addLast(new Agent(Id));
. i! Z2 A  U% R' k                Id++;
2 T1 [6 _$ B/ \! {- G2 r' {        }: u. `3 M3 e2 @, W* a. w7 N. A
4 h9 r4 u6 z/ f: d. R  K
        public Activity activateIn(Swarm context) {
7 d. Z' z* m! u3 A9 J$ H) Y                super.activateIn(context);
' A4 Q2 X5 ~. M& p7 I                schedule.activateIn(this);: u' @4 S5 [( _1 u
                return getActivity();
6 `% ~9 K2 ~; r0 `* s' l        }5 l. j7 G) n5 x& l( }$ e
& q. b) ^! Q8 w' ]6 F
        public static void main(String[] args) {
+ [& k+ V! A0 b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; W8 Y% a9 w0 X2 r% c7 e# L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 p# m6 ]$ G" b1 }8 I9 _4 o                swarms.buildObjects();4 O5 |. P0 |& X7 ?- B: A: H3 @  [
                swarms.buildActions();! V1 `! D/ ]$ \- v6 w% k& \
                swarms.activateIn(null).run();
% [7 r3 Y! X; B) b        }
. o( s& a) o# `8 U6 y. I1 a
4 H! s" r; j9 i0 S* K8 }- ]6 J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 07:38 , Processed in 0.011720 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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