设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10213|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & j* O5 [4 B" s1 ?2 C, ?6 b/ ?
/ g( q+ [* X, u3 i& B# ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! A* O: Z9 \* R2 k% ^# P# \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ H4 v+ X/ L; d
swarm.SignatureNotFoundException. y4 D5 V* y8 L0 Z/ h
        at swarm.Selector.<init>(Selector.java:76): P( C0 f; p2 W: Z* o. G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  e% b* R. {5 u6 k& e1 G4 T        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( s8 ]3 C# z9 h0 y6 P( F
  F% h8 T- @- ]& g1 g) c6 c6 Q' j, U7 X" C" l8 x% I  d& u: y
import swarm.objectbase.SwarmImpl;7 d/ J1 H0 x  b$ X
import swarm.objectbase.Swarm;
3 f$ u4 m1 N7 g# wimport swarm.activity.ScheduleImpl;7 d" D# J8 N. D0 R9 v% P5 s1 C
import swarm.activity.Activity;+ V1 V$ b8 @: ]6 S# f" K  P
import swarm.activity.ActionGroupImpl;
: g5 q0 J: T. z, B) aimport swarm.collections.ListImpl;: i# |) k# r& U, H9 r# P
import swarm.defobj.Zone;
4 l; [& Z! y) b9 C6 Dimport swarm.Globals;
  E" L% M% v- h7 Y3 @# fimport swarm.Selector;
- P/ w" _) j+ X: k5 l: q# e$ Jimport swarm.activity.ActionGroup;
1 k6 N% P) a/ Y$ P. e+ Q. uclass Agent {" w' O: U8 b1 l' D  l; o
        char id;
2 G, e0 r. H( G- b& K- G( E
- z1 ]. O' I) z/ f        Agent(char id) {# O9 E0 G, T5 o  M
                this.id = id;
  e% c7 ]4 E1 m$ b, V, X        }
; I* x& |% _1 i, i0 M* q$ y* v& W( }$ V: c6 a. I% }* S
        public void agentStep() {3 @3 [# |4 D$ D' F0 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 w! m; x, h# C' Q% s9 r        }- T  w/ ~, _6 ~/ _0 t& w+ d
}
& F$ u0 i) u; `7 ]5 |% H$ N$ d, w( k. N3 ?
public class ActionGroupDemo extends SwarmImpl {$ x& [6 U0 Q; _+ O1 @: O8 @6 u0 ~
        ScheduleImpl schedule;& {# ~0 G' s/ f5 z8 _5 q6 f0 c1 W& f
        ActionGroupImpl actionGroup;% r  O9 M4 {) s, N) A% [; G
        ListImpl list;- Y4 ?' _1 b/ g+ H
        char Id = 'a';
% V: i0 r0 h  j# K! F, p' o, _, z
# `: d6 o) {$ ?8 [( A        ActionGroupDemo(Zone aZone) {
1 c: Q- k: J, j' I# o* N' C+ C                super(aZone);
6 C3 @$ |: r8 [4 t' |+ x6 w( X3 S$ }                list = new ListImpl(aZone);0 }" R: l4 y: e% Y0 j
                swarmSetp();
! o8 i+ a! M9 U                actionGroup = new ActionGroupImpl(aZone);
" C/ |+ ]3 H; |( W                schedule = new ScheduleImpl(aZone);
2 ?: @/ V7 |9 C1 Z                try {
$ w6 T" ]1 e: K; l, b  h, P4 Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" H- L8 W2 l7 W, }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 ?, i8 W4 T: U! j3 f! f& e
                        
7 U: T1 n6 `, i& X0 c" ?& d( j                        actionGroup.createActionForEach$message(list, agentSel);
; M: ~+ b* n/ `, h" Z& p! A                        actionGroup.createActionTo$message(this, swarmSel);
( T2 L5 p3 |. ]* {* t) ~                        schedule.at$createAction(0, actionGroup);/ _3 [% q9 D" g3 y' V. R9 ?7 v
                        schedule.at$createAction(1, actionGroup);
$ m, H  d6 |6 Z- h                        schedule.at$createAction(2, actionGroup);3 ?9 N, A$ {' d

& d, F+ ^" J1 P5 Y                } catch (Exception e) {
+ Z9 J. j& c; Q# L; @                        e.printStackTrace(System.err);
' X6 m# [! r7 J9 W( r, X                        //System.out.println(e);: [5 R3 _! Q3 N% q3 }
                        System.exit(1);) ]2 L, q  [; L' P/ G1 A
                }- }0 n8 }! {! G  V
1 S8 _$ Q1 R/ I

' k5 U9 o. B' W        }
  n" B1 N" ?7 q9 ]% V& N! }* B( s" ]. y  C
        private void swarmSetp() {5 S( a1 I+ Y- X4 z2 z
                list.addLast(new Agent(Id));
, e- l/ ^  o! u$ v& I                Id++;4 E. o8 y/ m! \
        }1 d+ h; p% ~$ \6 F1 o: q) U
+ U9 W" f& `# y3 B
        public Activity activateIn(Swarm context) {
! H$ e, y5 k$ u! h                super.activateIn(context);
" t% x7 V& e( ]/ n+ t: e. I                schedule.activateIn(this);: y1 C6 E/ S9 O7 [" E8 I5 [
                return getActivity();; E6 t% g& V2 U5 M
        }, P; y* O0 q9 G) [' H3 p
5 {0 m9 Y  C# ~7 W0 @5 `$ p
        public static void main(String[] args) {
9 L& S1 v; f1 k5 e6 X) l4 n9 s5 |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# M  s6 A: e( Q- h' o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 x0 e; n# D3 g) a& N, D& p
                swarms.buildObjects();
6 c: s- g6 Q& q) k- y% S                swarms.buildActions();
; Q1 D& q' C+ w                swarms.activateIn(null).run();
& q, |' K* U! f+ Y2 P: l( Y! Z" ~" ^        }
' s3 Q. Z. s* F& R' {$ N' C
" R7 t  J" n! F6 B$ x3 s" h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-7 13:49 , Processed in 0.015053 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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