设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6511|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" y. t& Y: g/ y& a9 m* |- G; r* m1 d; u4 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" G' J$ P; H: G$ b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& A$ o, @0 |! S( A
swarm.SignatureNotFoundException$ m# A* l- m' W* x# v" X9 F
        at swarm.Selector.<init>(Selector.java:76)* T% V* P! v1 _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 a/ t2 S/ I  q# v) `# L; z3 r        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 s+ b& J" r8 `& b3 ~
* P4 \0 `7 @' X" h% G$ v
3 H6 i% F7 _& e8 Q) I$ T7 [
import swarm.objectbase.SwarmImpl;
6 r2 o, j! b* i% kimport swarm.objectbase.Swarm;
; |  i; f4 t0 B9 _* yimport swarm.activity.ScheduleImpl;
5 P* x& m; f# {' h/ V% U8 ^import swarm.activity.Activity;' W1 g) D/ G2 C0 j
import swarm.activity.ActionGroupImpl;
, |5 l: U; t8 U; o. [import swarm.collections.ListImpl;
( z7 X' ^3 T. uimport swarm.defobj.Zone; % B* a  t# j8 z4 i
import swarm.Globals;
, H7 s5 r/ l; Q6 o- m2 ^2 |- timport swarm.Selector;6 T: w: t/ t3 r( |9 t
import swarm.activity.ActionGroup; 2 X2 m* I) r# Y- c; t6 V
class Agent {) c% a5 }8 L; X1 M* _! Y1 m/ b
        char id;1 T5 \% |+ e) M+ L' K
3 ^; P7 m* z. X  w
        Agent(char id) {) m  l! |3 j# v: C5 Z3 f
                this.id = id;/ ]! h. D9 n/ j9 @
        }( d( A3 ]( Z  {
2 D0 S6 g' B' k) n  z6 q
        public void agentStep() {- i2 J! {+ {8 n, \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# p7 b. d+ n: b" K5 {9 h/ e  M        }
: C* D+ F: t1 z$ E6 w}8 l- ?- ^$ F# {# l
, j' ?4 |, ?! e. `' f
public class ActionGroupDemo extends SwarmImpl {
7 w/ c0 `4 E9 p1 D+ g9 m8 d        ScheduleImpl schedule;3 R1 c; g' s- f
        ActionGroupImpl actionGroup;$ F6 x9 f* I: A. a8 c8 d: i
        ListImpl list;/ @* T/ x# ~6 l; T
        char Id = 'a';# K5 ~3 R+ M1 s3 j  o. F

9 p% U9 f" b* x5 l) G        ActionGroupDemo(Zone aZone) {* s) p' f% |9 v
                super(aZone);) V8 v: v5 s2 _5 ~
                list = new ListImpl(aZone);$ \: z3 d5 E2 v2 r  M: W
                swarmSetp();$ @! B+ ]/ {0 K7 G" I, m: O
                actionGroup = new ActionGroupImpl(aZone);' l' P; [) w, u* w7 A
                schedule = new ScheduleImpl(aZone);
: u0 M% F) V! [8 F                try {. Z% A0 }" `' }% J) _" S
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 N9 f) Z/ K, ]  A- R2 g  ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ p/ o% H; g& o
                        
/ [0 z- [' l, z7 e4 ~# C                        actionGroup.createActionForEach$message(list, agentSel);0 ?( v4 l4 D/ p9 J3 o4 |
                        actionGroup.createActionTo$message(this, swarmSel);( a! T) a3 @, i
                        schedule.at$createAction(0, actionGroup);
6 t% \$ L: E& B9 a) R: v- R                        schedule.at$createAction(1, actionGroup);4 F( K6 \9 S& x/ f
                        schedule.at$createAction(2, actionGroup);
" o/ G1 O: f; m: A' U/ u# z, m9 l1 b$ r, B  I" x
                } catch (Exception e) {! R# e; h; p6 @; s/ e+ l0 u& W" P
                        e.printStackTrace(System.err);
% D& m, l/ d2 P- D* s  J                        //System.out.println(e);7 c  v: i5 j6 N9 t0 {' g0 n
                        System.exit(1);2 n, u& s3 C7 J! ~/ e3 S
                }6 v3 V! l5 ~2 }. ~- @& R
( B5 I1 C9 d. t& p

/ K" N! k& J9 ]0 e: L( `) K        }
2 z! U: z. B$ [# R  P5 d& E
2 C: x* l: |; k, ]6 J        private void swarmSetp() {' `3 K$ T4 o( q! Z. N( a$ Q# D
                list.addLast(new Agent(Id));
- b! R4 [: j& ~6 [; {% Y$ ^                Id++;% t0 b$ r8 ~- z7 u4 r) R! C
        }
) z/ d/ O+ D' j' x8 }6 W$ R
; B( S* s$ Y* A/ E0 h! f1 Y) R        public Activity activateIn(Swarm context) {
) B) y* Z) G, J  d3 y                super.activateIn(context);
+ [# d2 [. t% F- x, w) f0 J                schedule.activateIn(this);
7 v0 _1 V" N" C; [% w                return getActivity();
. c, v2 `* S" x7 n        }
$ G1 S; |3 ~  @8 X
5 q. @* Z- o% `' P        public static void main(String[] args) {8 b, l) D9 w, G0 P
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 G* j% {" X/ t7 u( o; A1 t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' E! y5 l8 d+ x
                swarms.buildObjects();! }9 t5 I- }2 a1 ~8 H9 j
                swarms.buildActions();
+ g, s8 l( z+ q) R: U* s                swarms.activateIn(null).run();
) F! ?& `& C  B3 d9 ?3 H3 H        }
$ q' k7 ~+ Q. `" e; O
+ ]5 U0 _" n  a* V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-30 16:16 , Processed in 0.017944 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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