设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11032|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, j  ^* n$ N6 w, a
: G5 g0 W  e1 o7 r) I" d9 V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* N% ?  J9 A/ I; p* K! D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) t! `' W' y0 }- V. m8 _1 G. b
swarm.SignatureNotFoundException
, [$ X' b. M9 N! @8 ^* y- _$ ?        at swarm.Selector.<init>(Selector.java:76)! n* _+ N  Z2 _2 }7 Z& s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* U/ c" @, Z8 `7 x- H7 _        at ActionGroupDemo.main(ActionGroupDemo.java:67)  J8 D, g' J( J, ?+ _8 ~% s

* {4 x1 N% y: D8 {- E+ E! N4 |" n* ^! ]) G
import swarm.objectbase.SwarmImpl;8 n- v' ?- @. E8 `8 u. S
import swarm.objectbase.Swarm;: M* q7 K8 M7 u& o
import swarm.activity.ScheduleImpl;
5 n' D' [  r+ n, timport swarm.activity.Activity;& g1 R2 g4 s/ H' G' ^( i9 S
import swarm.activity.ActionGroupImpl;4 g, a/ _% r; n
import swarm.collections.ListImpl;
6 n- F8 B6 W% _/ Nimport swarm.defobj.Zone;
0 i& g: g4 ~  H) H7 o+ U* @. I$ |import swarm.Globals;
; h1 x" E- z( B' d/ f; L$ timport swarm.Selector;; N6 H* [9 b8 g
import swarm.activity.ActionGroup; 2 g  K  E! R7 u
class Agent {
% F  Y; ~% I  r8 D+ X2 f  {5 a7 D        char id;3 C. p0 k" K5 T* m1 G1 N
3 {  |8 z! ~" j5 Q8 N! f
        Agent(char id) {+ S$ e; y9 t; m6 O- Q2 d
                this.id = id;( U. x9 \3 j" r, U" k- W) {# k3 R) @
        }
" e% |7 c. W6 E* Y
. a4 v2 a/ N. y! j        public void agentStep() {
! B2 P9 k. E8 s7 e; J# {                System.out.println(id + ":" + Globals.env.getCurrentTime());
% D: Z6 s& U6 j5 {+ f7 e) W+ p        }( d( }6 {  e, V
}
4 \& [0 [' w, h; [$ Z8 q- r/ B! Q: l, u7 a$ l" Z6 Z0 c( s
public class ActionGroupDemo extends SwarmImpl {
4 J3 g# R" c& y5 Y7 }        ScheduleImpl schedule;
+ e* u$ D0 p, q( A+ z8 x2 ]1 R- T0 p  N        ActionGroupImpl actionGroup;
' v5 j. q, c* b6 M        ListImpl list;
% T2 a5 U+ U# A- `        char Id = 'a';3 Z! q  B* b1 |, G! r( x$ h6 N$ ]

  v% ^- |2 O0 p; a. C* v        ActionGroupDemo(Zone aZone) {, B1 o8 q  Q+ ^& q  H5 Q: v
                super(aZone);2 g) q0 K0 T: E, C' O
                list = new ListImpl(aZone);
( [1 g- _1 _* U' P* t                swarmSetp();
7 X0 u. x: @/ B3 t; u6 w2 e                actionGroup = new ActionGroupImpl(aZone);( {% w+ `- I! t+ ?$ X
                schedule = new ScheduleImpl(aZone);
2 l/ t6 h# P2 L! l! ~3 K                try {
; e9 `5 c9 A9 J  w) F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" [% s( {1 K  q' k                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" F7 {8 Y6 h7 g$ _- S                        
9 |* E3 s, T" H& Y                        actionGroup.createActionForEach$message(list, agentSel);# t. G+ i# ^0 I& c, p" C) k' N
                        actionGroup.createActionTo$message(this, swarmSel);
, c& M5 K+ H$ P6 T* K- a4 q/ A; D/ k5 H                        schedule.at$createAction(0, actionGroup);
8 q9 @- t1 c$ y# a4 Z                        schedule.at$createAction(1, actionGroup);
# K, ~( e# z6 K! N( b                        schedule.at$createAction(2, actionGroup);
/ f& Y. n5 L4 r
" T; M' H1 ?) n  ~  N                } catch (Exception e) {' B% t, f. F) W0 b* ?
                        e.printStackTrace(System.err);# J) Z0 S8 S5 F2 e" @# q  E
                        //System.out.println(e);
5 l( W% x, J3 e) u                        System.exit(1);
5 Z" @& m3 c# I$ q+ N                }' U4 w9 y# Z7 t, K! r

; ?- W2 {8 F# \
* r# m! O. c. N6 u        }
  H  g1 p# X( J) m1 ^
3 ]$ B2 H: X' k' W& e        private void swarmSetp() {! g, |% E# P7 H# Z. @7 f9 \: P
                list.addLast(new Agent(Id));
* \. Y4 b( w9 k1 ?/ B( F                Id++;
/ ~1 Y3 e: O& U* W0 ]        }
2 w$ Q% B- F2 x2 w' v' R+ L3 B$ _% f% z
        public Activity activateIn(Swarm context) {7 g6 K2 x" d. z  ~+ }. T$ J
                super.activateIn(context);+ |1 G, G) t7 U6 A
                schedule.activateIn(this);$ S2 N! ~! e6 |: W
                return getActivity();
# `, @/ K, c0 _1 g) u$ V        }
& U6 a. T1 N8 s. T7 X- i. k  T+ A
        public static void main(String[] args) {
$ J9 b$ z# x; L& l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: \  U1 i3 h" t0 g/ d9 _" p
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; I. @2 ~* k" Y! u
                swarms.buildObjects();
; v( [/ F2 |' G/ m                swarms.buildActions();5 n# |7 R6 P6 V9 O' j. g2 f6 T
                swarms.activateIn(null).run();* r. t& O& `' Y0 O9 }
        }0 K- d7 x$ x3 X; D3 b2 R+ x) q
) m# a  [; B+ P. I. ]9 V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 00:45 , Processed in 0.016401 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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