设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7325|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; v# p- A! B) `4 Y6 c' W4 X
7 h  V& F$ T4 ~( D7 i2 M! U9 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 {4 u) B0 L' b8 P7 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' g3 z4 F$ b/ P" a
swarm.SignatureNotFoundException
7 i& n5 |9 d/ t' {9 t        at swarm.Selector.<init>(Selector.java:76)
- E+ f5 B* Q+ }7 A        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 E+ g% w8 t! X% Z        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) K. D" `+ }9 ?" V6 o' h5 J
, {% ]; G. m- w; T1 b: V$ `- Z3 R$ n4 U+ |4 `# }' V
import swarm.objectbase.SwarmImpl;, Y  F) W( b$ s8 n7 i; s" t( ?' O8 s
import swarm.objectbase.Swarm;
. _4 S0 s0 ?- Y5 d+ Simport swarm.activity.ScheduleImpl;
" {! {; s2 Y, t" ?& X& yimport swarm.activity.Activity;
9 H, H; j2 p1 L8 Zimport swarm.activity.ActionGroupImpl;" K! W4 `! m7 A4 \, n
import swarm.collections.ListImpl;! M  N: @* a; e- A* m
import swarm.defobj.Zone;
0 \: S( Y$ a- z! Q/ Qimport swarm.Globals;
. d3 Z5 N. N0 U0 z1 N* cimport swarm.Selector;1 r  k) P: v9 Q/ Z5 O( |6 T
import swarm.activity.ActionGroup;
5 N6 j- `* y' f2 xclass Agent {! W: F& Y$ S9 ~# Y5 x3 B1 J
        char id;
! @/ w3 U5 q% x. M- m2 v( e% E& ~! A. T% q% O( w7 A* {
        Agent(char id) {
+ Q  M1 O: B8 j                this.id = id;
; \3 s, K. N6 y# x# s1 c        }
" x5 o8 h8 V/ O% s' {' ]( v' u. L7 C8 l& [
        public void agentStep() {4 L/ ~/ j6 I4 V* F! [, h7 S
                System.out.println(id + ":" + Globals.env.getCurrentTime());* T% q2 n9 g! u3 ~
        }& r- M! ^4 i4 _2 o, X4 v, G
}
7 D& {) }' c5 H; L5 k, i* E7 v" N" Y9 ?) S* k5 ^4 \7 i& e
public class ActionGroupDemo extends SwarmImpl {
% Y& s, b( D9 V2 t# `1 B. ?        ScheduleImpl schedule;
+ L- z% {$ w; R2 |        ActionGroupImpl actionGroup;3 B4 v/ I6 ^0 x& G/ |' D
        ListImpl list;
. b( L$ p& g. Y- u: K        char Id = 'a';
; c6 J, R+ r$ R5 O7 P4 N2 U1 }' ~/ z( X  U6 a
        ActionGroupDemo(Zone aZone) {' B+ \+ O- D- ~7 A  G2 j
                super(aZone);
- h  h" x4 }" t2 e                list = new ListImpl(aZone);
2 i( f9 Z8 q7 d- n0 l3 _                swarmSetp();
: g6 k# p$ `- J" l' A) s                actionGroup = new ActionGroupImpl(aZone);
% `, r4 U! X( R; z$ ~7 F$ g4 N% u                schedule = new ScheduleImpl(aZone);6 I' V2 L8 u5 |( I, \
                try {+ D% v6 C/ l0 B- {6 l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 d" j+ X+ R9 O# N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 V; N) _0 j' }2 B& q' g
                        % E! [% E& V+ S8 J+ H0 I
                        actionGroup.createActionForEach$message(list, agentSel);
' x) ^' z3 C7 [) B  E! p                        actionGroup.createActionTo$message(this, swarmSel);, W: C3 x# ?/ T- e
                        schedule.at$createAction(0, actionGroup);
: M% r6 y( [2 C$ ]0 i1 H. `                        schedule.at$createAction(1, actionGroup);0 @" x1 L3 D- l3 e7 h1 W
                        schedule.at$createAction(2, actionGroup);
; l* [% z+ A' o1 ]7 C" h# j! A' |$ m) o2 I# `1 E2 U
                } catch (Exception e) {
- F" m# J0 ]# D8 H$ r$ L                        e.printStackTrace(System.err);
) z5 G( A% M. ~: Z; g                        //System.out.println(e);# E6 l2 L8 P0 O
                        System.exit(1);# q& Y. s* E- q+ i6 Q
                }  D4 _- r9 n# ~
& V$ P. f5 v* }2 ?. Q) R1 Z' z4 ?
) H& J9 Z$ e: `$ `9 y- ?
        }
  h: Q2 l6 \3 n5 x! i% [+ e& W9 \
/ @$ ^! O6 l4 q$ D; n8 ^        private void swarmSetp() {3 |/ s4 F, L$ {5 E) @- J
                list.addLast(new Agent(Id));
! U- d, F2 J- k: a; w                Id++;# a+ R2 {& [5 w* k9 ~" J, j( n
        }( k% C0 V3 v6 W: `) B- H" x9 P8 i

+ B& [/ w" B9 h3 X; v        public Activity activateIn(Swarm context) {  S6 l3 i4 s% ~4 W3 H5 d6 ~# B9 z7 x) V+ e
                super.activateIn(context);
$ r1 W( }9 ]9 ^6 u                schedule.activateIn(this);
- s9 e; N7 l5 G0 [1 B                return getActivity();/ T! j3 i: }1 G* G
        }
9 k* U) v2 ], i/ q
: ~' _8 |* Y1 }% T, q! {6 d; `7 f        public static void main(String[] args) {
9 j9 B, Y2 k! ?# U3 l) T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 U/ l) Z/ `! r; K8 @
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! M2 \$ a  q) ?7 L) R                swarms.buildObjects();
+ l  ]# ^0 S  w  D                swarms.buildActions();
8 t$ ]5 b$ u# f4 Q                swarms.activateIn(null).run();5 N4 B/ k) R  Z  c" r5 r! L
        }
5 u8 k" c& X* i2 E# H) ^
9 K, \: [, s" f4 C. A9 T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-26 15:37 , Processed in 0.015643 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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