设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4961|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& R9 f9 e) c; @* o% ^  i7 P4 Z7 S/ j8 @! k9 R! E% a, ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* w7 h8 m, h7 p& u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 Y! l4 i, t: lswarm.SignatureNotFoundException
' U! m# x' u1 u& ^        at swarm.Selector.<init>(Selector.java:76)
- W  a; T* Q+ A; J" T4 N8 l' _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) E; v1 b' ^+ `- Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)( ^7 L) y2 o- x" Q
9 w' I3 Y& `4 w0 A' g

3 `( W- W/ c  o# K* Uimport swarm.objectbase.SwarmImpl;
9 j9 ]9 F* T5 Pimport swarm.objectbase.Swarm;2 [  u: J$ ]3 X* m% ~( H& j8 z, D
import swarm.activity.ScheduleImpl;. R/ X8 u$ S! ^7 a0 F
import swarm.activity.Activity;4 a4 G# k& [% J) J$ Q
import swarm.activity.ActionGroupImpl;2 |& P" j- V2 @+ {* h+ G, b
import swarm.collections.ListImpl;
3 E. {' U- q& b  H+ E8 limport swarm.defobj.Zone;
. x( e  {4 k; N& Qimport swarm.Globals;
- Z6 R1 g0 v- j  V8 simport swarm.Selector;
3 F; @7 Q1 ]& A! Bimport swarm.activity.ActionGroup; , @" g2 J5 X- \$ R
class Agent {
1 d/ B0 Z2 e7 c: I0 J$ Z/ r        char id;
6 w5 d. O+ k& Y( J  U, d7 f4 X; w  `4 i1 O# w7 b
        Agent(char id) {
! h0 ~7 Y+ ?4 S9 `) H  g                this.id = id;% [- H1 L* ~& B
        }
* k  @# S# [: y5 Y  w' T5 N# f& {$ b6 D& m" q! U
        public void agentStep() {
$ T  D9 u: p' Q( ?0 h3 ^                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 J" `/ S: a" x3 D* }" G        }6 f% C8 N& b1 ?+ Y
}4 ~5 z8 q& g( D: z( M

6 _5 T) E# u  L! ?1 rpublic class ActionGroupDemo extends SwarmImpl {, m# R, ^0 L3 k3 y- e( ^
        ScheduleImpl schedule;, [3 p5 A: \. s% g3 R4 h
        ActionGroupImpl actionGroup;
) R" H5 S- X+ x( b! e2 L2 j        ListImpl list;
/ Q% }, J+ N5 M3 z) D$ @        char Id = 'a';
' C/ |% y8 C$ T' n5 A7 a1 W" K
        ActionGroupDemo(Zone aZone) {( A& _7 |5 ^+ c# u& Y/ o# X
                super(aZone);
3 O3 Q0 K# E2 g. |. t/ i8 H                list = new ListImpl(aZone);1 L; l& h6 l3 s1 P4 _
                swarmSetp();
& Y0 x" X5 W0 Q, l2 J                actionGroup = new ActionGroupImpl(aZone);
/ h5 Q8 T% N* O6 t  s6 s                schedule = new ScheduleImpl(aZone);+ ]5 T' L) M1 m+ j7 }
                try {
7 Y  [0 D3 N- U& K, r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 [6 @/ R8 [4 ^3 D5 D+ O                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  I0 g  x* @& h+ X* \                        
9 P- i8 v% C( b# f- J$ H                        actionGroup.createActionForEach$message(list, agentSel);
/ Q; T+ q5 S+ {: O" q# d                        actionGroup.createActionTo$message(this, swarmSel);  g5 H  T# g' {4 _
                        schedule.at$createAction(0, actionGroup);) o1 r. ?. I: f9 z# `* ?
                        schedule.at$createAction(1, actionGroup);: ~8 \; h# D% L3 i4 @: y( |# h; x
                        schedule.at$createAction(2, actionGroup);: a# P; q* M% F! Q

  O2 J- _4 @$ O* N4 H" A# O% ~                } catch (Exception e) {
( n; B( U# Y) f' x9 E, U9 y. E                        e.printStackTrace(System.err);
: f/ k& O; o! a; W                        //System.out.println(e);
- U: u8 w/ d) [" |4 u; j% v                        System.exit(1);  ?- S" b  e7 Y+ [* R
                }
3 k$ V$ O0 _' l2 t0 A0 J& x2 M' o. R$ `5 Y8 {' d+ Z3 C, Q
( _: Q' _6 k- B/ X, G9 R  Z
        }
# k8 u* z' f5 R; B: R
* n' N. X/ c5 U" z: ?        private void swarmSetp() {, V" t4 g; r6 ?; f5 v! M7 }
                list.addLast(new Agent(Id));6 t  o3 m& ?9 g. f
                Id++;
8 v+ A& v" _1 V4 _) s$ N9 V; }        }2 t% s% w" n# X) z

9 q: L, V- T) W( {+ k/ j" \& D0 D        public Activity activateIn(Swarm context) {! M3 y" Z! S! u2 V& ?9 Y
                super.activateIn(context);. ^7 d1 j1 @% u
                schedule.activateIn(this);
. `# t: i) u) e4 D% \                return getActivity();
5 o& T1 U0 P- O; R6 {        }
# b( I- _. L. Q. d& Q. y& x2 }" \+ Z# h; h8 S. J: p! m& `0 h
        public static void main(String[] args) {. p( A0 v; ]% `4 q3 ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  G: ~% y2 P4 L" u' Z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 ^  x: W( X& _5 ?2 B, L                swarms.buildObjects();
1 X5 e% D5 j: Q7 @+ P0 U                swarms.buildActions();
6 U$ h' M& |9 e; p- B                swarms.activateIn(null).run();
% }2 S4 y# R( |4 y- k        }# x4 d, Q5 E) @& Z5 e' C2 ~/ W- S' F

, ]0 D8 O8 t# q0 N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-19 13:31 , Processed in 0.016151 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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