设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10715|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* t, N: @+ M- N: w6 R6 e5 r9 I/ l6 F3 P( D0 n# R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 D$ G' ^0 J1 ~9 W8 W* U, p( u8 I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 N$ r- L/ _, N# y6 V
swarm.SignatureNotFoundException
. b& [, \( o" X1 _5 B9 \3 S        at swarm.Selector.<init>(Selector.java:76). {, p8 C) f: s8 W2 {& b" E0 J
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 t7 Q; C4 I+ `8 |# P. `        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 A$ ~, t9 g$ {6 ~5 v7 c9 W' s& V1 c
+ p! P# |3 \# j0 q$ c6 N

) M8 ?9 E' g" W9 [( l- q5 ~: v* N9 C8 bimport swarm.objectbase.SwarmImpl;. q" k) c1 B7 f( J5 _
import swarm.objectbase.Swarm;: v7 e% @# r3 s% s: b7 F- k
import swarm.activity.ScheduleImpl;
" l0 F: r6 u8 f& Kimport swarm.activity.Activity;* V8 j1 Y3 z3 z  h
import swarm.activity.ActionGroupImpl;: @/ v" ~5 S! ]& _$ g* h5 I
import swarm.collections.ListImpl;$ F/ X2 U# j+ @( H0 k
import swarm.defobj.Zone; , G2 x+ _; G- h8 p
import swarm.Globals;
% M3 Z( z, ~0 H! {6 v8 eimport swarm.Selector;& J4 a" W! F0 D4 b3 M0 `
import swarm.activity.ActionGroup; 1 q( P) B# e! G# r
class Agent {
* o+ b8 H$ ?- E% c& L* R        char id;
9 S( k7 p* i' ^
* N: f2 ?! Z" K2 G        Agent(char id) {  S! E. b& k7 r2 D  L$ ]. b
                this.id = id;7 @; z  D; c+ N- W, _
        }/ E% q$ f$ [6 h4 T5 ~

; P& s& B9 ^- o5 T; Q; n        public void agentStep() {
& N+ e2 S/ I- V. k# Y' q3 M- V; h                System.out.println(id + ":" + Globals.env.getCurrentTime());
' X7 x5 c( X$ v% s; F        }
- Y2 ]  n" S) ~6 E% F) T}- [2 c8 `1 }9 C: x; Q

# ?  [$ d! p; P: H: Bpublic class ActionGroupDemo extends SwarmImpl {0 g" r1 }" k6 E3 T, H. a% h
        ScheduleImpl schedule;
& c6 r1 Q3 e/ ?6 u2 m        ActionGroupImpl actionGroup;  [8 y1 t; j* Z& m
        ListImpl list;, C: t" Q0 U; j, a
        char Id = 'a';
/ I7 |6 e+ Z- j3 k$ q& e/ M, b4 S6 a/ G1 v+ ?" O' U: N) |
        ActionGroupDemo(Zone aZone) {! L, P  U- r$ K' H& ~4 k5 O. |
                super(aZone);
9 [# W% \1 a& w/ Z1 F+ x2 {- g* h; }                list = new ListImpl(aZone);
/ [4 w& W0 q4 T2 ^& i                swarmSetp();
- f4 s: F- }/ i6 d                actionGroup = new ActionGroupImpl(aZone);3 Z9 A" e4 M* G; z& b2 e' f
                schedule = new ScheduleImpl(aZone);5 i. K6 A5 y  J, ~5 D! e- D
                try {) P! E3 C) r  v6 _3 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' v) m, I, r$ c' x& O                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ V( B/ ?7 |( E' u5 b                        , V( B( X6 O* V4 Y6 \1 Y
                        actionGroup.createActionForEach$message(list, agentSel);
5 j4 M* l: }. V* z0 M                        actionGroup.createActionTo$message(this, swarmSel);+ G- ?) g; e/ ~4 r/ V  {
                        schedule.at$createAction(0, actionGroup);  v# Q# K5 h- W
                        schedule.at$createAction(1, actionGroup);
  d0 c7 C% r) a; s; N" H                        schedule.at$createAction(2, actionGroup);! x1 Q& A. ^& m$ N

; s% @" n. y% h" }' [/ B/ F" f5 D                } catch (Exception e) {: ^/ x. l8 a- F/ p
                        e.printStackTrace(System.err);+ K  J% r+ L+ N
                        //System.out.println(e);
+ l7 j% f" `6 I# {' y- k& A                        System.exit(1);
4 e" ]! Z5 a, A                }
7 p; b2 h0 E- E! ]; |
+ |. }9 p" ~; [6 j9 v. p, \' ]( g: m
        }) O: s3 U* W$ i
( w* I4 D7 t- \3 @% y) m3 `
        private void swarmSetp() {
5 L; L1 \3 L( b3 o                list.addLast(new Agent(Id));
: N# R# R0 W" R" d$ I  W" B6 p                Id++;
! d4 K/ D% d7 w% i: F  K2 `+ a        }
' O6 u" k! c8 j) j7 ?1 R7 v
4 O5 ~% }  |9 }/ A4 M- o; X        public Activity activateIn(Swarm context) {6 C4 e$ Z7 F, L% @
                super.activateIn(context);
8 D" w; N$ L+ g$ E! `                schedule.activateIn(this);  [: i" k* r* I
                return getActivity();# T/ \( p# \, i& w6 E1 d
        }
" a; _0 Y' G4 v  o
9 ~4 }0 i; C+ ^, U7 U6 {8 q        public static void main(String[] args) {  Y7 K- p$ O' u; n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: B5 U9 M* U: O% r! n/ ?$ ~, [1 }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# U6 u& s$ S, k  e! b( X3 J
                swarms.buildObjects();
7 u' k$ Y& L6 S                swarms.buildActions();
# N. m) f9 r3 d& h) M* c! n                swarms.activateIn(null).run();
$ C7 \6 ~8 Y+ V        }
* ?9 S. j. p; V8 E+ n' K
( ]5 ]( S$ S" _# z; B3 w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-21 11:30 , Processed in 0.014115 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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