设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6853|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   e. X0 {( a! R5 E5 e% I! S% R

3 @6 @8 U3 a6 C- [7 a1 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 |4 y$ m: l4 F, U/ T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; l; t: b& C" T) a
swarm.SignatureNotFoundException
7 p- ]1 N7 w, R* m* H9 E2 x        at swarm.Selector.<init>(Selector.java:76)6 c5 w4 w: X6 D8 T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 H6 R* i2 u4 L. Q8 E8 e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 a7 J% }8 D, x

, v* V9 p$ d5 C$ t' u- h
7 P4 q) t; I- q- Himport swarm.objectbase.SwarmImpl;; [7 i1 H8 D) |+ T  Q; w
import swarm.objectbase.Swarm;
2 H9 M$ g6 B4 q+ |3 Uimport swarm.activity.ScheduleImpl;0 d4 Q# W! R  ?/ l, L
import swarm.activity.Activity;
/ x6 j. I# U8 v% mimport swarm.activity.ActionGroupImpl;' N. V/ g: G! v2 ]" Q
import swarm.collections.ListImpl;; a* U/ b) D2 N1 V
import swarm.defobj.Zone; 3 J% E& j( @; e" n, [, }$ [: Z
import swarm.Globals;! u3 I) l; D0 O! H" T9 q
import swarm.Selector;/ c1 x: N' M. A0 A8 C
import swarm.activity.ActionGroup;
* {$ }3 g$ V2 y7 F2 Y) Eclass Agent {" T9 t$ Q! r; d9 Y" [1 y
        char id;$ c' H( j& [" l1 @2 T
1 _& o# H/ J! A2 l0 v+ Y1 C1 F
        Agent(char id) {: D" W7 o! w8 [" x, Z+ @( L
                this.id = id;
6 m2 b) u) o( ~  F; y5 x        }
' q3 C* c" T+ J  V0 ]1 u
  R4 w  y: o- y% _; @! ^& u5 f        public void agentStep() {2 M" X9 G' l# d( Z2 E+ _3 x6 i! H
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 `/ R. {8 v: X. T        }
( ?' Q% h  w; b# M/ ]}
* @( e2 e  {1 P" d# Q8 ^* ?! E% m# H
public class ActionGroupDemo extends SwarmImpl {: u# v7 ^+ a1 q& t7 ~$ R6 y
        ScheduleImpl schedule;6 ^) b5 }& y6 O- t: L4 R8 ~& y9 I
        ActionGroupImpl actionGroup;
/ X  `( c0 {, b) i! \0 v        ListImpl list;
' J8 U( L" K4 d- B/ ?. L7 c        char Id = 'a';* E, J6 [! x5 H5 ~. i
+ ?) {, R4 D: q. m6 w* k
        ActionGroupDemo(Zone aZone) {  m, F: O1 d7 K1 \
                super(aZone);
% U  C  |+ p. \1 G2 Z                list = new ListImpl(aZone);! B* F% V* k7 U- R. g
                swarmSetp();
8 r+ z3 u  `5 @# P4 d' t                actionGroup = new ActionGroupImpl(aZone);& s) s3 L6 W% l/ L' x1 F
                schedule = new ScheduleImpl(aZone);) p7 b0 [) m! l& g$ a
                try {2 o8 L8 |0 F5 P/ u+ M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 b( S7 l7 S. G. l9 k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, w+ y3 i" h$ M4 |4 k  W* k                        " `( Z" i, Z7 J1 \8 `
                        actionGroup.createActionForEach$message(list, agentSel);
2 K# W2 J$ L, \. d' R                        actionGroup.createActionTo$message(this, swarmSel);7 U. l, u& c1 |, Z; J
                        schedule.at$createAction(0, actionGroup);
1 R; ^6 J3 p$ M5 g( G$ W                        schedule.at$createAction(1, actionGroup);% t0 N) k$ k  O. _
                        schedule.at$createAction(2, actionGroup);5 T. z9 Z; r" q& s
: }. U& T- B! e8 K6 Y. p
                } catch (Exception e) {  R8 U0 v7 ~9 a+ R. u' M
                        e.printStackTrace(System.err);
; q) D3 @; J, x                        //System.out.println(e);5 I& J3 b, i' i+ H
                        System.exit(1);
* U. e/ I$ s$ X- _5 z! D                }
$ O5 X4 T% L6 |5 t9 ]% ]# O
" R- Z! w, f& b, q% Y; p/ }5 ?9 K6 `+ q3 v1 w
        }) R6 i- D/ w8 R# o" z% ]5 \! V
! c3 ~% W7 Z! H& P6 z3 |
        private void swarmSetp() {
/ A6 v; A; ^! P2 c. ?                list.addLast(new Agent(Id));* F2 j7 P( `* u, [7 s" j% K7 Z
                Id++;
5 r, f: K0 x! A3 h        }
! q) R9 ?3 Z7 A' E( I' `
& t# ]$ `8 r2 I1 k; ]        public Activity activateIn(Swarm context) {
; T, r+ ]( l/ q$ b                super.activateIn(context);: N8 V' R  O3 o8 K
                schedule.activateIn(this);
* c9 U& Y0 M  S/ c                return getActivity();! i$ ^7 P$ ^( U3 _1 {
        }, Z/ A8 j9 m6 h* z# o& M( q; B3 j; {
% p: t; X0 r& r+ _
        public static void main(String[] args) {
% q% ]" z) `4 V  b. g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ X3 b: z  g9 ^: Y5 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 w2 V- o# O: f- [
                swarms.buildObjects();
: \3 ?, _3 x/ z7 s, |' A                swarms.buildActions();
6 j# T8 }1 `  h/ c6 O+ x+ J                swarms.activateIn(null).run();! o+ K9 q% T, _6 u
        }, r4 T; V6 {5 n/ l  @2 l- N6 `- B+ K

8 b# p) i" @" S+ B3 h  r$ H: y! J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 05:40 , Processed in 0.016245 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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