设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5860|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & E) h4 ^# C6 W6 M

2 k. b) R+ W* D. E# Q& u3 g0 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( ^$ B5 z% N4 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 L/ T( d5 q) H
swarm.SignatureNotFoundException
9 v" i7 Q# m  A( b        at swarm.Selector.<init>(Selector.java:76)
3 e8 r* A6 D- i+ x" a) s( ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' ], Q7 B- y" |" [0 I( g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' F$ D: B9 \+ d
$ f, _3 p1 _! ^5 M* W

  p0 ?$ X' n# O& c3 Wimport swarm.objectbase.SwarmImpl;
* x' S# Y: b; T3 V6 [1 b" j/ R5 himport swarm.objectbase.Swarm;
# B4 I4 H  U' |9 w5 [import swarm.activity.ScheduleImpl;: v# ]3 e6 J* V: u
import swarm.activity.Activity;% _  ^0 S  M9 E2 K; i" _
import swarm.activity.ActionGroupImpl;1 O* p, @% K4 Y7 h% P3 Z
import swarm.collections.ListImpl;
' O; L1 q$ M' j$ c9 h; h# H" }4 nimport swarm.defobj.Zone; ' I2 U* [' x% z
import swarm.Globals;
5 f7 f1 r1 }- \! d  Z' z: q& vimport swarm.Selector;* o7 l" W+ Q$ a) v  A' y
import swarm.activity.ActionGroup;
% ?9 o6 `" Y; Z) aclass Agent {
4 d3 v7 ]) i- l5 _& T) A2 F- t        char id;
2 t3 v. P: o. P4 ^- \- X" H5 z- q% _, D' B
        Agent(char id) {
$ U3 V6 _* X" x0 W                this.id = id;
" t# N8 I; Q! h! }" V        }, z, ^/ q2 [0 }5 A
- e7 o. D# z) s4 Z; t
        public void agentStep() {
, N1 W5 z) S1 u! P4 l4 a                System.out.println(id + ":" + Globals.env.getCurrentTime());- L2 `9 ]# f0 D
        }$ i: p. i- r6 c" Y& c; M" J6 b
}
5 v. n. a+ {8 M7 J5 ^! ?! F1 A# [" d
& D/ d+ f  Q; K' X9 U# U0 A/ P! E. x% W9 Qpublic class ActionGroupDemo extends SwarmImpl {  M5 r* H8 f; A6 [# a
        ScheduleImpl schedule;
9 u- j# c: V1 Y/ x, ^1 X        ActionGroupImpl actionGroup;
+ o, l) A+ G# s& G7 N- _' z        ListImpl list;- [* L3 `/ n( B; ~7 }$ E
        char Id = 'a';* W3 H0 L! y) h
6 r6 }# l8 G* q/ {, _0 l) i% |
        ActionGroupDemo(Zone aZone) {- m, \# G7 D8 e
                super(aZone);) {/ C1 X4 c8 B- m
                list = new ListImpl(aZone);
! `  {  c( D+ u  u2 ~( D/ h                swarmSetp();
' `4 P: H+ W" |- S/ t                actionGroup = new ActionGroupImpl(aZone);
- j; h/ C6 a) G& I- k5 T$ |' l                schedule = new ScheduleImpl(aZone);
; R* S- L( w: ^% I( q; E$ d+ \                try {5 @) U- j0 V: j1 h  x, p
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ G2 S& C5 D2 ]: [! k9 ]8 B9 w( H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 _' X; H2 }$ L7 ?& L
                        
  t4 ?2 {" _0 G                        actionGroup.createActionForEach$message(list, agentSel);- }. I' o* @) ~' G
                        actionGroup.createActionTo$message(this, swarmSel);, e+ Z7 @+ O1 s7 m' h2 N6 r
                        schedule.at$createAction(0, actionGroup);; k0 g2 q) {5 y
                        schedule.at$createAction(1, actionGroup);, @: f% h$ z4 i0 q2 R
                        schedule.at$createAction(2, actionGroup);
2 ?# i1 ^- e" N- A) I1 i* @4 o' w1 g" v" h3 z0 }
                } catch (Exception e) {
, d9 {! j7 f8 r% g- O0 c$ d' u4 I. H                        e.printStackTrace(System.err);
& k- \1 Q, E# d  l( X                        //System.out.println(e);
' ?  \7 h* b/ _                        System.exit(1);+ s, L4 H* N1 Y# e
                }) |% I( d' s( ]5 l
, L8 U, w, A* c% ?: E
+ C% Y* v( C: d- _
        }  V5 t, n! N8 O4 T6 l0 f

! f8 i$ l1 N! c% V        private void swarmSetp() {
; _+ b% \  V- H- S6 X                list.addLast(new Agent(Id));: t+ u: F: h1 r1 h& L; T% L' U0 O
                Id++;
. K+ K; r, d& B: n3 ~; a        }
0 l2 W" L% g* I) G; P
* S% D, K' h% m; x        public Activity activateIn(Swarm context) {, u% m' h( W8 I( `" [4 M
                super.activateIn(context);  ]/ I" p6 ]. y& S
                schedule.activateIn(this);
, }; e: |% k" m! g) S                return getActivity();3 }, Q1 u; K; g  L, P
        }
% R* n) h# r/ [# k( U: W' K! }+ D! Y* n' u2 ~: `* I/ p' R
        public static void main(String[] args) {
$ w' A* O7 D" z. m* n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  F- Z% M+ H+ J& W6 L$ z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 `  B' ^2 \! ]                swarms.buildObjects();7 P& a# g. f' |% |9 }4 G9 ?2 a
                swarms.buildActions();$ E5 k; Z% l' ^# F6 Y1 A$ s
                swarms.activateIn(null).run();; c6 _8 _& l; y  D2 E' Q
        }: e2 i$ y2 n8 d4 b. b) {

% x  Y" n  _+ n' ]7 N; E}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-1 12:33 , Processed in 0.016124 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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