设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11077|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! C5 s0 p& J/ k9 j7 @! r

6 I9 p6 x: l, _' T/ h* ]* c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# ^5 _, {$ X' M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; O, ~. g" _% Q) V! [
swarm.SignatureNotFoundException7 [$ q! [" @+ V4 X" ^3 ~5 z* p
        at swarm.Selector.<init>(Selector.java:76)2 N$ b6 ~( O5 k4 b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. H, Q5 M5 p7 u& d" j% \        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ Y$ C% Y# {! c  S
3 {- V2 ?& s6 N  d/ w+ v, r

- ~4 a8 k! z) `: x4 s- @" E+ `import swarm.objectbase.SwarmImpl;
  y* w+ z* V9 `: D) L+ E4 G8 ^0 Q/ zimport swarm.objectbase.Swarm;
+ @( Q+ ?5 e% {" Q2 ^, T2 Jimport swarm.activity.ScheduleImpl;
6 R# l4 }% M2 V  T6 _( P6 Oimport swarm.activity.Activity;
' Y* s+ x% U: x5 [& l% O" mimport swarm.activity.ActionGroupImpl;
% N$ q' p7 W0 ~0 _! Aimport swarm.collections.ListImpl;
. P! v, n+ t2 K4 G# i) i" Q$ q. |& o- `) iimport swarm.defobj.Zone; ( C) z  Y! g9 ^% p  J
import swarm.Globals;! u* X5 t( i8 q7 |
import swarm.Selector;
: r  X% |5 O# |! r& Y! l! O1 himport swarm.activity.ActionGroup; , x" |" j9 O1 y% W
class Agent {$ _; g" z5 T$ h% o* x1 U
        char id;; y* c0 Z* s  ^
5 K# m2 `/ ~( B5 q
        Agent(char id) {7 q: T, N% E1 U! J4 n' `
                this.id = id;
. i; C' Z& l1 B- l        }' F0 o1 ]- j3 W) x5 W2 _
0 U7 }6 v5 E- L6 j
        public void agentStep() {1 h) h; j8 I" r: `) A# v$ `# ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());  _8 d9 \. N6 T3 w( V! e
        }/ Z/ }) v$ ]4 l; u
}5 [" B( E; g+ \# e/ B! ~; K
2 {" P  R3 c7 C: {4 f2 C3 [, C
public class ActionGroupDemo extends SwarmImpl {
1 `* \3 a6 X3 |) b: k7 ^9 ]. J4 I# {        ScheduleImpl schedule;7 U; m0 ]. X  r  Q) h7 h
        ActionGroupImpl actionGroup;+ W  @! [! o3 `9 t6 d  f; W
        ListImpl list;! I# E+ h" l9 \' l0 h) k/ A5 X
        char Id = 'a';3 P1 o1 S% @' D. ^

+ h& X! v, v, X$ M, K7 a! G        ActionGroupDemo(Zone aZone) {  Q7 c( e( ^0 x! }6 L
                super(aZone);5 D9 \+ A, J& p( k. H. P5 \. r
                list = new ListImpl(aZone);' _" a  @9 j  f
                swarmSetp();
$ H. ^' K. s  p                actionGroup = new ActionGroupImpl(aZone);
' J, v  @# R5 v' E- @. ^. }                schedule = new ScheduleImpl(aZone);
: j0 a% }" Q! z; I/ ?. E: O                try {" q. R6 c3 ^& W; [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ ]% z/ n% i8 y0 T& F7 X- |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 {1 j$ m9 u6 g5 a. b; f6 S
                        9 e1 h" A6 a. k, n
                        actionGroup.createActionForEach$message(list, agentSel);. m7 B" ~- ~/ |. F7 U% k
                        actionGroup.createActionTo$message(this, swarmSel);
6 p' F. l; G" y* R  U% L                        schedule.at$createAction(0, actionGroup);
8 T2 S0 X5 }: C  Y) D. @) `2 q                        schedule.at$createAction(1, actionGroup);
; r: h0 T( |0 s6 t! T+ ~. O                        schedule.at$createAction(2, actionGroup);0 K* P% z, ]1 d

" z/ l, O8 E& R- X) E                } catch (Exception e) {
5 r2 X  p! P, l6 w9 t$ C9 h6 ]                        e.printStackTrace(System.err);, T& ^! v, k! a4 R# a: U7 p0 j/ n
                        //System.out.println(e);5 m3 z2 Q2 U6 |
                        System.exit(1);  C% k$ s' e5 T
                }
- U( l( d8 i) a3 ?5 o5 }+ M2 ?3 i9 ?2 R9 d( H$ J$ q% @2 M+ \
! j8 \$ T1 B* p  A- \' y
        }
: D8 h$ N  [7 N' Y
; \& r6 i4 _) D+ X        private void swarmSetp() {7 }! {, X5 u& `2 y
                list.addLast(new Agent(Id));  `  e% ~7 z* |  r6 F2 ]
                Id++;: T6 T! ]1 p& P' M
        }3 w- \% M: d1 H$ l8 i$ f
9 f& k  w8 P' @8 z6 ^. j# I+ w7 z
        public Activity activateIn(Swarm context) {) u) o6 R) y+ Z* `, C
                super.activateIn(context);- y, Q6 @" ]6 D' Z- `
                schedule.activateIn(this);
  R& Q' Z* B+ a( K( b* N; P                return getActivity();
, S$ B) _* n, s. g3 Z% a' ?        }
4 ]( V& \5 }( H3 I  g0 V! [8 ~& B
        public static void main(String[] args) {
0 ^# L9 J  I. }. y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 w) f9 w6 n& J6 f7 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  T) W& Y' K+ v1 o. Z2 [0 x# P
                swarms.buildObjects();1 w% P7 i7 A! O3 w. \9 @1 D- d
                swarms.buildActions();
" V& s$ a/ q3 f& j0 \$ `3 Y                swarms.activateIn(null).run();$ M/ G/ [3 ?$ L, o
        }; i5 |; @1 X1 i: H* G

4 L0 i, L  C1 f9 c& l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 07:35 , Processed in 0.013510 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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