设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7124|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" ^/ z% s4 L5 S, @6 I* V3 q7 e+ a1 {% j9 a- z+ V  g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ o0 W! u2 b1 {; r8 N3 z- W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 e. R' e9 R# E: `0 j/ x. D
swarm.SignatureNotFoundException
& `" A: I  J% B$ ?5 u) Q$ J        at swarm.Selector.<init>(Selector.java:76)
7 J8 Q7 z1 U* n* b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. Y* p' j. n) a4 ^+ o        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# D% L& Q2 f$ O) ~' _5 o2 a& U1 Y9 Z5 P6 V  s8 ^& q  E% V2 `
8 t. s' V7 ~0 Q/ f
import swarm.objectbase.SwarmImpl;
7 a$ f8 P  h2 `import swarm.objectbase.Swarm;/ K0 Q; B( Z& A/ b8 m
import swarm.activity.ScheduleImpl;
( V# v5 \; \1 C2 K" f6 V! q0 timport swarm.activity.Activity;
/ |1 q2 V3 t& [# vimport swarm.activity.ActionGroupImpl;1 @7 U( V. w! H  \( r1 Y
import swarm.collections.ListImpl;
! c- n. Z/ Z0 {- L# p! t. L* i; Bimport swarm.defobj.Zone;
1 a& e6 p5 q' T3 vimport swarm.Globals;. L$ u6 s9 ?" o# ]: v. H* j; Y
import swarm.Selector;( |( \0 C& @1 V! @/ `9 ~5 t8 _
import swarm.activity.ActionGroup;
4 r1 B; R: m3 `' b3 e- j/ wclass Agent {; P  h& V" D9 }
        char id;8 Q3 ?0 T2 g' S9 ?
9 G. C$ |& j! Y" M
        Agent(char id) {" e3 i) l. i2 [1 C8 [/ ]+ p
                this.id = id;
: `0 h) F, J3 p0 i- x6 n6 V: u        }3 i8 G# U. u$ y! z% @0 R  [
% }8 D$ `+ Q5 X4 j. R  E6 r
        public void agentStep() {5 L) `6 B% N! v% _; M9 ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* }( W9 t1 N7 v4 U* a        }+ v. I  j' A( m  v) ]
}
3 X% V* j1 Y3 V' M6 _1 {& `; j* V6 J8 `8 g2 A% q  x1 d
public class ActionGroupDemo extends SwarmImpl {
5 X2 O* n8 l! B8 K+ Z; L        ScheduleImpl schedule;- ~2 a' }( g( G) T; l( Q
        ActionGroupImpl actionGroup;
  J  Z3 d+ o. N        ListImpl list;% Q. C1 d4 E- s5 E1 h, k, G' O
        char Id = 'a';
: A8 Z8 d) X. F* Q! @* _( Y% ]/ a
3 O+ _3 J7 _( a1 `7 B        ActionGroupDemo(Zone aZone) {
# E0 E; c# y: ]                super(aZone);
; w2 U- p$ I4 Y3 E* a+ }( I                list = new ListImpl(aZone);6 Q3 {7 B! b  Y- J
                swarmSetp();0 }2 O. y! v# x; @
                actionGroup = new ActionGroupImpl(aZone);' y/ {- }5 S$ y0 ]& U, P
                schedule = new ScheduleImpl(aZone);
- I; O/ h3 F) ]                try {
4 l) e7 F/ h( }$ y( r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 D# D& G  u5 a- Q& p# t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 x& n6 ^9 [: _! X% b                        " t# q) y7 ~7 c; {9 k  n) s# {* J
                        actionGroup.createActionForEach$message(list, agentSel);
4 H, u5 R' K% W                        actionGroup.createActionTo$message(this, swarmSel);
/ g: g6 E6 y$ g. }  ^1 [/ J5 e                        schedule.at$createAction(0, actionGroup);: S8 h! p1 c. U5 h# I7 F  J
                        schedule.at$createAction(1, actionGroup);
- U# M* t$ [0 W+ z- X+ j7 A                        schedule.at$createAction(2, actionGroup);0 T! i0 J& x! Y1 j5 A! X' I
) w+ T5 s0 N/ M4 P
                } catch (Exception e) {
! d3 V2 l7 b+ q                        e.printStackTrace(System.err);( l. ^! P7 L5 ?2 L3 J" c; P
                        //System.out.println(e);
( }- D4 j, L3 k7 z; L0 Z  |, \. z                        System.exit(1);! n3 l6 H& }; Y7 ?
                }( V* i8 {0 A) D- o' x
6 P1 \1 ?7 X, }$ T0 g5 P2 o( [
8 X& |) B) {6 X0 W% f' t
        }; L7 l3 `. K$ c! G( [* P1 d

8 s) g0 W+ w/ g2 n        private void swarmSetp() {
& |5 P4 I/ A3 e7 ?4 d' w  z# n                list.addLast(new Agent(Id));# R; D" B: E# G: R$ |. S& a. T
                Id++;
. U4 L8 G6 T; O2 U3 W+ P3 ?        }# M0 u7 f: W& R

; n! S  C7 M, E) t( O        public Activity activateIn(Swarm context) {
6 X: g# U# W4 ?7 o  F- o/ w: C* s                super.activateIn(context);
' H* G: |5 l: j                schedule.activateIn(this);1 M6 R2 b; O# g% d& j/ x6 P1 T
                return getActivity();: n! p) P' h6 S! T. k9 j
        }
. Y- [3 O3 o( ]7 ~$ Q/ Q6 ]8 d6 X# P# h2 E* t  }! q) l# x, W, e9 n
        public static void main(String[] args) {5 f/ B* `0 u  l% W& [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 I1 S2 c+ \) u8 t$ u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 o$ r! @  @0 U* t. ~                swarms.buildObjects();
& a0 @+ H& a; {& a1 Q+ N3 U0 c                swarms.buildActions();2 s7 v- U: S# m9 O. b5 \/ K
                swarms.activateIn(null).run();# `: E( d2 E+ O9 e; E2 m
        }6 A6 l6 p% k4 \7 R1 v

8 m/ Q7 G+ b2 W}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 05:45 , Processed in 0.016544 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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