设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7095|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: J, V5 h: I0 S9 e% p& h
! q- \( I6 g" Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  b5 R/ L3 h$ G% U) l3 b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! }6 T  U8 \6 e: j* Jswarm.SignatureNotFoundException& v% G( ?- B9 I# n
        at swarm.Selector.<init>(Selector.java:76)* b/ R! o. [$ G- W: C# j6 Z4 Y, M" g
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' e: x1 y& o( t6 a% ^( L8 ?( Y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  d8 q; z3 S4 _: t% y. v
; k% p5 s- ~3 m$ U8 ?
/ ^$ L' `! ?5 N$ \" r9 s0 K$ p4 gimport swarm.objectbase.SwarmImpl;
4 C. {" K. p- F2 a7 I! bimport swarm.objectbase.Swarm;# q; W4 {* X+ O* I/ y& s5 s
import swarm.activity.ScheduleImpl;
+ K& O1 h( \$ |# Zimport swarm.activity.Activity;
( y# `% X% I4 ^" E) jimport swarm.activity.ActionGroupImpl;2 S: O+ c. N8 l; @$ H
import swarm.collections.ListImpl;. T: T7 t9 _: D" d$ g/ t
import swarm.defobj.Zone;
! G! I/ b, P0 a4 S3 _3 Simport swarm.Globals;) x6 ]- J, v' {) G
import swarm.Selector;8 O) _+ W0 L. d7 z6 E7 `  P) K3 O
import swarm.activity.ActionGroup;
) k% N' E& R# G' E) l0 [4 k3 sclass Agent {& {# p+ O8 ?& |) Q2 l  D( a& B
        char id;& p$ z# U# S9 }5 C* V
) T5 i& K, a- \, P. _
        Agent(char id) {1 i7 c; F  ~/ N# Q. ~3 W1 E, H
                this.id = id;
7 ]/ K0 X- ?4 ~6 G( o) o8 k3 q        }/ A" {9 m0 r; l- u. O$ C  [

8 ?8 t9 o! Q0 i" s; c: \2 I4 ]        public void agentStep() {
4 L% o0 @& e  L$ R4 ^' Z                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 v3 P( Z# j2 t) t  t; b        }5 [8 x5 K, |6 ?
}
( M6 }! [+ m" s+ z
- F# W! O3 @+ [public class ActionGroupDemo extends SwarmImpl {/ a& |. R5 Y9 ]& t/ G
        ScheduleImpl schedule;, z' U. q: p, N! ^2 B
        ActionGroupImpl actionGroup;
, n9 F, s  }4 s5 X9 Z" e" h8 o        ListImpl list;% R0 g& d1 Q* W
        char Id = 'a';7 j% z) y; |. b

8 W5 w% e9 f, p        ActionGroupDemo(Zone aZone) {8 K5 R/ `* v4 L( [3 m$ @
                super(aZone);
' a+ p) ~8 S  c& K                list = new ListImpl(aZone);3 R; G' ?$ \, @2 i
                swarmSetp();
4 ?) W" o: h5 ^6 t- w                actionGroup = new ActionGroupImpl(aZone);+ {: n6 }/ j3 \% E$ [' Z% g
                schedule = new ScheduleImpl(aZone);5 Q# H9 m6 _: }
                try {
. }" T  w% h  R/ E3 S/ L6 G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; t! D5 }# J; \0 F3 n! A, A9 q
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; E. e2 v/ h* Y- o
                        
; o- w; ^1 l- U, V                        actionGroup.createActionForEach$message(list, agentSel);
" W* w# J0 s3 i0 Q% C( q                        actionGroup.createActionTo$message(this, swarmSel);2 J- I) q+ U# ?  j$ R4 Q
                        schedule.at$createAction(0, actionGroup);
6 u. p' k! e. R/ J1 Y0 @- M+ x6 {. {                        schedule.at$createAction(1, actionGroup);3 S$ g- w# v  M
                        schedule.at$createAction(2, actionGroup);$ D! C: |7 p% a, Q$ ~- ~8 y8 g

4 x/ }9 T9 O0 \9 k                } catch (Exception e) {
5 W8 P7 ~+ x& L4 h3 k; E) P% R# P                        e.printStackTrace(System.err);$ @: B5 ^9 J% E5 n+ @
                        //System.out.println(e);% n6 k: q! F4 V, V5 Y/ X
                        System.exit(1);/ e0 o1 g8 D- t
                }
! D! o- |$ S0 c" L# ?* ?! o! d' J5 ~8 `; Y5 I

: Z( @1 u- G$ f        }
3 R# }% k, f6 L
+ ?! V( |0 w; v8 K. C5 @        private void swarmSetp() {  g- A* `$ H4 c2 H& w
                list.addLast(new Agent(Id));" ^8 ^- ?* Y$ r* A5 Y- G) t
                Id++;
6 D9 O- r+ B9 r! V5 R        }
+ V$ ]. J' s5 K* i- F, e
% l0 Q. m: D! [$ n) T: l3 m        public Activity activateIn(Swarm context) {
. h9 a2 m7 `& c3 d  _" O7 ?( _                super.activateIn(context);
. Z, q, f% j4 d                schedule.activateIn(this);' R& {% t5 X9 I# c) i0 E
                return getActivity();) f; b  W6 E/ P3 X2 s
        }) Y7 D. k3 ~* b" A9 K& Q
' F; [  B. L* h7 m3 U% N3 u
        public static void main(String[] args) {
1 K3 ~* v8 u$ e, U' g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; l3 @% d( [9 h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, C/ y! }! ?; v' \7 [' b* I  b                swarms.buildObjects();. U1 n# h6 U0 C/ W2 m! Q8 k
                swarms.buildActions();
- f% `9 L. ^( D0 P3 V' L                swarms.activateIn(null).run();! u5 o9 D5 u1 t  l  X9 J/ l
        }6 E* ?7 a' p" c! ]; W

: ^9 u6 p- Q: N; G( d, [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-19 05:42 , Processed in 0.026908 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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