设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7237|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 b4 T. A, }* j0 F
  c: p# H. n  w1 b$ b& Z: F2 ?( T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  S0 H$ Z- _3 h9 \; O& d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 n$ S, [+ B6 U1 Z% w
swarm.SignatureNotFoundException( X3 q) M& I; N; `" w
        at swarm.Selector.<init>(Selector.java:76)
- a/ e8 A; \1 J' M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ x: i! T1 y# j! S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! r% ^( @" ^" Y. J9 V' w5 {2 X

, f/ z, K. k, Y7 `+ x, o! E; C
6 W8 O/ p/ F, j9 F7 j" y, T9 l# N* gimport swarm.objectbase.SwarmImpl;) b, b0 s5 [: f$ Z- @, {/ u
import swarm.objectbase.Swarm;
6 K1 A0 Z/ U' z( k- |import swarm.activity.ScheduleImpl;. p* T$ h+ J2 g$ F! N9 ~" [
import swarm.activity.Activity;
2 H# A& }' o/ g* ?: ~+ gimport swarm.activity.ActionGroupImpl;" C7 K3 _: R3 B( k
import swarm.collections.ListImpl;5 d5 Z5 F6 E' G! {: V
import swarm.defobj.Zone; 7 }* c: f; L9 A& F- g4 R  q
import swarm.Globals;
  X6 C( D5 t7 c2 c% G0 D& Jimport swarm.Selector;$ ~  S6 m; a9 ]1 _
import swarm.activity.ActionGroup; 2 H6 H# `% A. L3 v6 Q
class Agent {2 u4 @: ?' k# {- s. U3 a. a6 W/ E
        char id;+ e" H. \6 P. K# m9 i& h
* E% f5 x# F* L: _7 J
        Agent(char id) {
# W! e3 Z9 |' T( Z' O4 S                this.id = id;
1 w8 }+ y$ l8 h+ c! A6 M        }5 V# ^4 \6 x2 ~$ ?
* Z9 o; W/ \( M6 s# Q8 r
        public void agentStep() {
  m1 Y1 y& P- `4 C0 c/ Q                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 I4 {1 A& z) x3 L# \  @        }; h. a* h0 d8 C) y5 Q
}0 l/ e! |/ y  u! W: p

- @, Q$ z% ~0 e( N# Vpublic class ActionGroupDemo extends SwarmImpl {
2 U# n# M. I0 q6 i& z% a1 ?        ScheduleImpl schedule;% ?# a5 C2 D6 _! |6 P
        ActionGroupImpl actionGroup;
6 W( T0 X, ]- B4 C6 k        ListImpl list;$ P. o. Y* D' E  b, T! K
        char Id = 'a';
1 g- a8 v6 l3 g# J6 k; Q
" d% l2 s" K3 E, Q5 B( B- J2 w        ActionGroupDemo(Zone aZone) {) n% I: J1 x  ~! {6 L
                super(aZone);" W9 C( a- L7 O# K7 l9 d4 ~' N
                list = new ListImpl(aZone);% o4 M5 f7 Q0 z; [5 G% g* M
                swarmSetp();% r, C. X/ K. a$ R
                actionGroup = new ActionGroupImpl(aZone);
+ c( \' a% M) F1 l                schedule = new ScheduleImpl(aZone);
4 Y4 L% X1 ]- z+ ~& ^                try {! _" {) L" i  O6 b, Z/ M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 ~8 F* \' y! z) M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ }$ D. I: l. o! r
                        % T$ R9 l! B/ D2 A- e% @* L. ]
                        actionGroup.createActionForEach$message(list, agentSel);0 l2 ~+ i. I! Z2 l: h4 }1 n* J/ T
                        actionGroup.createActionTo$message(this, swarmSel);$ N6 Z+ {0 |  S9 j
                        schedule.at$createAction(0, actionGroup);
% i) E# T& ]$ ?                        schedule.at$createAction(1, actionGroup);
- l' [4 k2 N/ `) z  u                        schedule.at$createAction(2, actionGroup);
! {- F$ k  a6 R2 [# _6 A" U! T! L: g# ?2 |6 R8 v( W: L2 V
                } catch (Exception e) {! a! K( x  Y% k, e0 J- U# E
                        e.printStackTrace(System.err);/ f8 K# f% S% W3 b
                        //System.out.println(e);! k+ E0 L- {1 c) ]  X, N
                        System.exit(1);* d: Y: d3 E1 `! D+ M9 x$ M
                }
! b' ^- S( d5 S/ Q- Z6 S
5 }  {! F- d0 U: y6 T) z: b! z2 ^. e' u0 g5 d" J% I4 E  |
        }
" d* @8 X  t5 o5 P  `+ \
! i0 B( _2 U1 o, l1 D3 _        private void swarmSetp() {
9 h$ s* K/ o# A4 {7 R                list.addLast(new Agent(Id));
( ^) W* _; h4 H" t; |( U, d                Id++;
, F9 G/ ]" u( i' b( d        }
5 j4 [& Y1 `! O) e' W  j
0 B& Z* q" ]* I3 p( h        public Activity activateIn(Swarm context) {7 W3 E; |; J* _* E* y/ \
                super.activateIn(context);
1 y% ~( ]: ^- ?                schedule.activateIn(this);
5 B# }6 o5 Y" P! Q$ u6 V                return getActivity();7 _( u# y4 q, f
        }
" |$ W4 D4 q6 d) Y3 f# X9 i6 t2 ~3 ~/ ^. g) D5 ?: u4 B
        public static void main(String[] args) {& x) I2 n) I4 r9 r& r9 F$ S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' d' K7 n9 l! P* X6 B$ Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  A) M" q7 D, @                swarms.buildObjects();9 O: v: ?$ {4 V
                swarms.buildActions();
! D* a' y% A1 U7 R% ~                swarms.activateIn(null).run();- e: Y+ q% f! U1 U
        }
7 p7 x0 \1 l/ ^' g% j0 f: Z! _+ O; e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-23 18:33 , Processed in 0.015325 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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