设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7644|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 g! ?3 _, G% b* b. y* \
6 D- @( O' ]- S; `3 f' ^8 I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; p5 F2 P' Z* w6 G) @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' D/ ]7 n4 i% L0 q" w2 d+ Q% K7 Tswarm.SignatureNotFoundException
# J/ i  j# k8 @* o9 f        at swarm.Selector.<init>(Selector.java:76)
% X- q8 k  z8 H0 d0 t( i9 v        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  c" a- M5 A9 S1 `5 l9 A9 L3 q6 e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
& A& g9 k" `+ o4 L) h& {. o8 ]6 h1 z' a5 K

, r' }$ t  s) E5 K* _5 bimport swarm.objectbase.SwarmImpl;4 \) X. M1 d" e# Y% o
import swarm.objectbase.Swarm;
4 J* w$ |+ B# v& Eimport swarm.activity.ScheduleImpl;
* Q1 }5 f2 I2 Uimport swarm.activity.Activity;3 T! z' G/ T# k1 i
import swarm.activity.ActionGroupImpl;4 u: r* q9 S* e" {. ^# n4 g, Z3 D
import swarm.collections.ListImpl;" o3 t7 T  f% T  }
import swarm.defobj.Zone; ; @* v1 Y; O: n: V0 j
import swarm.Globals;
3 d: @8 G* l( }2 H1 Rimport swarm.Selector;: @  @9 O/ Q1 ]8 C
import swarm.activity.ActionGroup; ' g8 O% E+ x# }7 q% w
class Agent {
8 l8 h4 d1 I+ Z; u1 T+ a        char id;0 [7 z' t. B( K+ B) I$ }
) E1 t) }# R, Z8 u
        Agent(char id) {- K8 Q' i6 [9 @- f1 }* b- |
                this.id = id;0 }. f) A" K# {: l4 {7 ~8 G
        }. W3 t: C6 C  b, q
$ o' t/ K( h' r2 V) w: u( G$ D5 Y$ ^8 l
        public void agentStep() {: _' c) N9 q4 O% u& [/ `$ |
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 B& K1 U. x* x! T. Q- c& E        }
& ^" \/ s  Y4 n9 h3 C! d}
- A1 A+ O& [7 Y$ w% K+ N
" }. Q0 a+ o, l& v, e0 Wpublic class ActionGroupDemo extends SwarmImpl {# _7 X! p: Q: X, K5 J+ R+ l+ N& a
        ScheduleImpl schedule;/ F) G% @0 Z" ]" O. A% }
        ActionGroupImpl actionGroup;
' u4 t- t% ]7 z; I4 g        ListImpl list;# c% _$ N+ ^8 o: o  h) t
        char Id = 'a';; }6 Q* P. N% F! A9 u# w
3 ]: {4 p+ ~6 l! ?' F- I
        ActionGroupDemo(Zone aZone) {
5 s' W0 K5 ~  ^" I- |2 g* e. X                super(aZone);
: e; H6 A; B$ R) L! o                list = new ListImpl(aZone);
) X& q$ R; Z7 J$ i7 r                swarmSetp();% p  w0 ^6 V+ p. a1 Y$ h( C
                actionGroup = new ActionGroupImpl(aZone);
2 k. P7 e( }) N* N: a- r                schedule = new ScheduleImpl(aZone);: r9 D4 s# l5 O7 C3 q: b5 t- c9 x
                try {5 `8 P7 x5 f, @4 O0 _5 b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( C2 {( O6 l; m: D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; W: o% t" x+ u# U5 N0 Y4 o# _; d* y
                        : M) N% P( F. O3 h4 `" ^% P! R
                        actionGroup.createActionForEach$message(list, agentSel);! b; L0 `: Q6 N1 [, y9 V1 f
                        actionGroup.createActionTo$message(this, swarmSel);
6 W& [' V2 h: q5 G! k7 \& n8 \6 p                        schedule.at$createAction(0, actionGroup);
/ s" p& N4 S% }3 ~$ b8 j: g                        schedule.at$createAction(1, actionGroup);
/ ^: I& b, d8 s$ w                        schedule.at$createAction(2, actionGroup);; p0 }( C, r+ w' c7 z2 v+ q7 X

5 N/ C- b5 z4 \+ U5 H$ T1 \                } catch (Exception e) {, r* o* I1 q  k. N" W5 e4 d# I
                        e.printStackTrace(System.err);
7 R& T+ j* C5 ]                        //System.out.println(e);
' C5 p0 J1 f$ f, Q6 \" t                        System.exit(1);* J$ ?! L; p! ^4 u/ m$ g
                }, U1 a7 O+ a' {) R3 I
4 H1 g+ B$ {! v9 ^+ b0 z
4 B, ?3 x- D4 s7 V; T
        }
& P- V5 ^8 g, e- z9 p, D9 C% a) ?: f
        private void swarmSetp() {
1 W, _8 B9 r: @  \6 _                list.addLast(new Agent(Id));4 s0 d/ K0 W- f
                Id++;
: @) [& y1 ?3 M7 P& |8 C0 ~        }) K9 _% E4 y5 H& U- |2 g& `8 `

$ ?. B) V  u" [7 B2 H        public Activity activateIn(Swarm context) {
+ u7 D/ S" J2 q0 L                super.activateIn(context);- s' j& Q& J, w# A
                schedule.activateIn(this);
: B$ B0 I$ b. r1 Y9 a. @7 t$ ^                return getActivity();
1 Q/ U9 F) w9 \: n: h* N; }, Y        }# H9 O4 i- [8 |$ z7 _* n2 [% o

# G) C2 r$ J$ l+ E& u        public static void main(String[] args) {+ v2 Q- Z7 T9 Z' ]
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' i2 S6 @9 N$ p3 h! L0 n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 j0 m7 ?& j/ J9 ]0 g& B3 N                swarms.buildObjects();
! E: V! T( u6 O3 C+ i& b+ q" r                swarms.buildActions();
  P$ Z* d5 Z9 c5 ~3 |( U                swarms.activateIn(null).run();% t- X0 @7 D& C% W# l
        }
( m* x: d; X/ ^( i. b' A' t' \: S8 g5 i. M+ s: G7 s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-10 02:41 , Processed in 0.023271 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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