设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13507|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" j* S$ v2 U8 \8 I5 }1 ]9 c! w0 ]3 i. h# w4 A1 i* I7 J2 S+ M4 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) e- W+ m) B. r, ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: L6 J% B: J; u. D! {1 l* n( z+ D
swarm.SignatureNotFoundException
8 r& n8 @1 h3 C# C- S7 I, w6 {( t        at swarm.Selector.<init>(Selector.java:76)
0 A8 M* D2 Q4 ^9 @5 j: V0 o% i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 e/ D6 N3 T8 j- i; C. d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' w& ^% x" y6 ~1 }. r7 |+ d

' g8 t0 b2 v5 ~1 n. I( _7 u
) S: |8 k5 h1 ~: H( v1 F% Aimport swarm.objectbase.SwarmImpl;+ Y$ \( u2 K: y
import swarm.objectbase.Swarm;' ~2 Y0 s/ F- z/ C
import swarm.activity.ScheduleImpl;
9 s$ {( A: a% w" b6 y: [' vimport swarm.activity.Activity;
9 X  _3 B8 J2 p9 ~0 I( ?import swarm.activity.ActionGroupImpl;# N3 {: D& f+ l/ N$ R8 d( R5 X$ M
import swarm.collections.ListImpl;
  J" G: Z5 J4 ]: v( E- Jimport swarm.defobj.Zone;
$ Q( `! x  d- E0 w- H* u8 L3 Yimport swarm.Globals;
2 ~/ ]8 H7 f0 B+ E; C$ ]import swarm.Selector;' d* Y6 S9 C# X
import swarm.activity.ActionGroup; 1 X, h/ }( ]1 M0 v
class Agent {% M' ^) y+ p6 f& p
        char id;2 h( g1 m! r6 c& n; V
* @& h7 B4 B6 R: T- p2 n; V$ u
        Agent(char id) {4 W0 P0 D% u* M# s) h0 m  r: f
                this.id = id;3 r6 @2 l  o+ |& ]
        }; D# {; S0 q: U& A( {5 F

* X0 J; U! I9 g* Y% h9 X% a        public void agentStep() {7 ?3 n4 s9 F* d+ |
                System.out.println(id + ":" + Globals.env.getCurrentTime());. t! Y5 S9 j2 D
        }- x' P6 ^: Z! S4 t) `: n: X
}
, V( a. s% ]( y) K8 H% }
) D$ H1 E' Y; s+ f$ qpublic class ActionGroupDemo extends SwarmImpl {
; m4 {; w  I& L+ {        ScheduleImpl schedule;
7 ^& H1 G7 ?2 m. h8 P        ActionGroupImpl actionGroup;
0 S% \5 @+ R+ R! O% `( d        ListImpl list;
1 Y; Y. _/ X) |+ C  E( |        char Id = 'a';2 G  e8 n' X5 J9 m" d5 q0 w' Z% ~
3 k* Z) R% g  O
        ActionGroupDemo(Zone aZone) {8 S7 ?1 |: z: [
                super(aZone);
* x4 S2 P# C1 C8 s% r9 H                list = new ListImpl(aZone);
8 A0 T, Q# p9 \; O                swarmSetp();' V- N1 ]7 T" F5 o; ^. ?5 x
                actionGroup = new ActionGroupImpl(aZone);1 t' X3 D9 f5 L( s7 r: ~
                schedule = new ScheduleImpl(aZone);; j1 V) b1 V) u; d
                try {
' ?& r6 m4 f) R8 b4 R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 ]% @4 |* C- N3 b0 p% o1 Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 @: g/ T) V) C                        0 u, R" |' X& ~9 i$ i; O  T. j" t; q
                        actionGroup.createActionForEach$message(list, agentSel);
) C; J  V, Q- F; X: R                        actionGroup.createActionTo$message(this, swarmSel);
$ }3 z. y. ^% z                        schedule.at$createAction(0, actionGroup);
2 z1 Z" r: E! d" B                        schedule.at$createAction(1, actionGroup);/ `( {. l; D9 @$ U
                        schedule.at$createAction(2, actionGroup);8 K3 [" V& t4 Y  k% ]

, q* N; t' W/ v% [; n1 X                } catch (Exception e) {( p9 @6 x0 f( I+ I0 c
                        e.printStackTrace(System.err);
& o8 f( R* v% r( L* N7 l7 R. _, a5 Z                        //System.out.println(e);
/ k7 q. b$ g" f2 \: m' d1 h                        System.exit(1);
- C) _7 \0 Q, u) u8 H                }
  L; W9 a3 P- K( c5 P+ I
1 ]' p  x- ^' w) K( M; E
1 J" j! O- d: J        }
% Z! V; w# |* z0 k4 D1 B: N& w/ I* R* W3 H  w
        private void swarmSetp() {
6 ^" ^' N9 [7 ]5 W7 u  r: H6 k- B                list.addLast(new Agent(Id));$ E6 A6 F4 Z$ \6 M
                Id++;
# g' @# I3 Y! W: r4 h        }' s" Q# K+ I8 C3 J/ p" z- n
# X8 e% _( t: x1 m/ {6 z8 s- e3 n
        public Activity activateIn(Swarm context) {
+ l" ?3 n4 n! `/ Q                super.activateIn(context);( V. E$ N2 I; S7 l6 Q; E
                schedule.activateIn(this);$ Z: J- O! T/ }/ `$ W
                return getActivity();, I, M9 }* A5 R3 U* C7 ~
        }
& x" o& m9 }& U6 C5 E
% l0 _. W8 K7 G! t4 s. J4 U9 k        public static void main(String[] args) {
* R* a5 j/ r; S" \+ U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' O$ q; W6 s: Q+ v/ W$ T                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 G; `, Y' d" w; E/ A( H0 ]1 w5 y( F                swarms.buildObjects();
' n3 D: \* A% R) T; R3 a6 ^8 g                swarms.buildActions();! f! k& Y1 X6 J. x+ S! I
                swarms.activateIn(null).run();9 Z" W. V* Y& h' N& S8 I
        }- n, y7 j: B, @5 v. V

5 N$ W2 ^1 d" `; s" N% W: v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-9 05:44 , Processed in 0.017527 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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