设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9452|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 G. |" N: y) X9 @" s# V! U" G. k
9 h9 V9 c& C9 }' V+ r( j/ {: x! w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 K2 @2 ^% V. ~3 Q3 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 K. ]" p) ^& E5 m& F0 E
swarm.SignatureNotFoundException
0 R7 a9 V8 r" Q/ ^; w8 @        at swarm.Selector.<init>(Selector.java:76)
5 p7 a# J; c8 i1 i: U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* n6 z/ b/ t9 L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 U7 \# R8 J; @9 u& Y) S1 r

3 @7 l( J% T$ ~$ b# e. B$ ~
( C/ S$ D' y9 Z, cimport swarm.objectbase.SwarmImpl;
4 K" q4 q& a' M; p& |. p! Aimport swarm.objectbase.Swarm;+ `0 T& }+ J7 p3 b5 i9 R( k4 }  @
import swarm.activity.ScheduleImpl;
7 M% c- u; b- S/ F5 i( n2 A: {import swarm.activity.Activity;& @' i- ?- k% B0 M) M/ h
import swarm.activity.ActionGroupImpl;$ ]$ z0 I; V; E) {: N
import swarm.collections.ListImpl;% d8 `) k9 `& V% D
import swarm.defobj.Zone; # x: Q& g& V. @3 {& D6 G8 ]" q
import swarm.Globals;
7 s% L& o. K* f& W  E  A: ?8 zimport swarm.Selector;2 Z9 m- u/ }% P9 h; |
import swarm.activity.ActionGroup;
3 a! W  B  f% @. e' q9 \! ]2 Qclass Agent {
1 G7 d2 m% x' @7 M1 K1 ?4 _- e        char id;
4 i* v7 R, T( r% W6 `4 H: `; T9 k% l) A% @+ c# z' A% h7 j
        Agent(char id) {0 x2 {2 ^/ Y4 q: `/ p  V- v7 P
                this.id = id;1 V  @+ D- _3 [7 X( s& k: }8 r
        }
% U  ?* r% x3 h, |$ W, P# U3 F3 D+ Q: e
        public void agentStep() {, b/ h9 r$ \$ I1 z& G
                System.out.println(id + ":" + Globals.env.getCurrentTime());; J( R' h) k# g5 ~
        }# I5 q* h0 q! M
}/ H7 T# G5 M8 s. K* O) L
0 c/ P: e$ @) H) P' L
public class ActionGroupDemo extends SwarmImpl {6 k' b" ]" D  P) }  q3 @6 Q
        ScheduleImpl schedule;
* U( e' ~; Y2 e        ActionGroupImpl actionGroup;: c0 q8 K, X. L* g* ]
        ListImpl list;
) r0 A9 N% E1 F        char Id = 'a';8 E8 Y" w7 q- \9 F: o, ~
  J+ E4 `# \+ t5 f% W9 e0 p
        ActionGroupDemo(Zone aZone) {
! A4 x- s6 Z9 v; E# ]4 K( n                super(aZone);9 ^4 k' y# j; w  D
                list = new ListImpl(aZone);
5 Y  p7 r1 b' ?7 r                swarmSetp();: C) i2 a; P3 x% p9 B
                actionGroup = new ActionGroupImpl(aZone);; S$ K( V. e  g
                schedule = new ScheduleImpl(aZone);( R6 F6 o2 j; v! _
                try {& g* K# `# T) }+ i/ F
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- {" S( d" x+ t- B$ d* N* x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) m/ v& i# k+ H
                        
8 X* U1 l# ?# x                        actionGroup.createActionForEach$message(list, agentSel);
; U2 Q8 I7 K( c) I0 D                        actionGroup.createActionTo$message(this, swarmSel);
; Y9 J/ _3 Y" h/ B' w4 E3 i4 n6 H: ?                        schedule.at$createAction(0, actionGroup);
/ d  \6 T+ s6 l& @                        schedule.at$createAction(1, actionGroup);+ u3 L6 G* E  z) I5 |
                        schedule.at$createAction(2, actionGroup);
" G. z# f  E/ l' h; q1 Q3 V1 N" v- x/ C
                } catch (Exception e) {
# x# A" i' v+ p% B* @4 ^9 U                        e.printStackTrace(System.err);1 M9 s+ J( o. u7 l# S1 X
                        //System.out.println(e);
4 v) m. P- c5 P5 y- b/ L4 e                        System.exit(1);
( y5 H, }" D& m# M" N* V8 Z                }
0 q! n  \, C0 w" P9 c) d; e% @  Z# S# m7 p* E  q" @

0 a3 T4 W4 |2 p3 _( ?        }
3 e" [- V4 V. T" S2 q; E( {( P* ]
6 W7 j8 I4 L5 {        private void swarmSetp() {
5 z& x# O7 e: `" L* E' d                list.addLast(new Agent(Id));. Z  H$ x' ]: y7 i2 {% Q4 U3 T: d, d
                Id++;3 \, g" P" K& O* z; ~
        }7 i; F' F1 M, ?3 V# f, u
+ {) X5 s% Q2 r" i' e) r) ^
        public Activity activateIn(Swarm context) {
2 J; H. K; b; u: |6 c9 T! H4 Y8 R                super.activateIn(context);
5 q$ P8 T% h% G( {  t' s( m                schedule.activateIn(this);: }1 F  ^) O  ~0 i3 Z
                return getActivity();. x, B0 ~6 v* k5 W8 s. }4 h
        }
3 M$ e1 C) J* v1 b( L) D. t( }% h
+ P+ h& X! N3 U& K) @/ A        public static void main(String[] args) {6 j7 |0 |0 g# W9 _8 i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ D' u7 v4 T$ P# y* X# r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ K3 h$ x4 Y1 _) E
                swarms.buildObjects();' p& g4 g) S, {. `4 L9 Q  y0 ~+ O
                swarms.buildActions();
( U: R" f# c, l7 p5 _' E  {                swarms.activateIn(null).run();
' X* A& j; C$ H+ N& `( z        }) M+ t, H  K+ U- c

8 S" Q# M. `5 I: k% H6 V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-13 03:02 , Processed in 0.020745 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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