设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11226|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! |+ g( l2 ~- n5 W% ^4 E  l
+ K/ ?2 ~+ X. [" c6 R! ?* Z8 e6 [" l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* ~& F  r( g' O2 {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 ^* Q) i2 q7 m
swarm.SignatureNotFoundException
9 v* B1 D% }; P6 m$ T, R" P6 l$ e* _        at swarm.Selector.<init>(Selector.java:76)3 V3 ~! l: n' T) C4 z  y8 R
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 B1 o4 y/ ]/ r4 I0 |' W' E, ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 }2 e; {/ B+ F8 t; e) v% ^1 l- L
; f6 [: m0 I$ ]7 [6 r
1 |7 _4 Q! v7 Ximport swarm.objectbase.SwarmImpl;
1 z% U& C8 h7 Himport swarm.objectbase.Swarm;
; L/ {" j' w, v/ J) S2 qimport swarm.activity.ScheduleImpl;
4 u! J7 K- {; v; A/ A- ]6 jimport swarm.activity.Activity;8 D; v. `- R& }6 N& W& \9 I0 O
import swarm.activity.ActionGroupImpl;: s# w9 C2 ~7 p# E' ]6 a2 V: @
import swarm.collections.ListImpl;
3 e1 m4 g! x- S" r" C, Q; f! d/ aimport swarm.defobj.Zone; 0 P, G& d" X* `. b# k+ a+ i
import swarm.Globals;+ X  f. I* }: ]8 A1 r3 p
import swarm.Selector;
2 m! h% e, J7 u0 T4 Q/ |import swarm.activity.ActionGroup; 9 P* [) O5 L0 c
class Agent {
; l- T# `3 g8 t1 P9 F! t        char id;* S" w5 h2 P. q/ K6 G' [
; r: O1 o8 L- p& ^* g4 ^4 G8 }3 @
        Agent(char id) {
  T- ?: w5 T8 E, A                this.id = id;
% C% Y% Q7 ?- e5 k1 c, l        }2 O. `/ d5 x  C% C+ J0 M
/ ~& g# i. a1 q
        public void agentStep() {
  W3 f# G7 I) x: l5 y                System.out.println(id + ":" + Globals.env.getCurrentTime());: m+ E1 x8 p' j6 \- \  ~
        }
; l0 J, w; ~2 M4 ?9 Q( B}4 O$ L2 C4 s) ^. E6 u

* k/ x; e/ p. V" ?, ipublic class ActionGroupDemo extends SwarmImpl {
& C1 l% h1 s; c% a        ScheduleImpl schedule;
% _1 z" L$ F  g8 ?+ }( J9 I! ]        ActionGroupImpl actionGroup;
+ ^  W8 ^6 ]3 c$ s4 ^% b5 E        ListImpl list;
& S, [* ~8 h& V- ?2 {$ J: y& p        char Id = 'a';2 q6 {  g. r+ @& x# C# L
+ z# T7 F+ w, ^  W: j( p( ^1 {
        ActionGroupDemo(Zone aZone) {; R( e4 k% Q$ N9 w/ C, I
                super(aZone);
! }: w- E) g0 V* B, E& v                list = new ListImpl(aZone);, X. y, {& z% N; J$ r/ ?& h
                swarmSetp();7 I0 o. ]& a: O7 H* _/ w  V
                actionGroup = new ActionGroupImpl(aZone);
6 C( M3 C) e8 ~( \% J8 n6 E  z                schedule = new ScheduleImpl(aZone);
$ V( B* @) |: Q; }0 @  n5 w; j0 {                try {+ K% i9 {8 S+ U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 R0 f. o4 V7 j# z7 A& c% f; `
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- Z8 c7 ]% Q$ y1 ^9 W; `- t: b& h# Q
                        " ]6 N+ }% H7 G4 `7 L% m0 I, b( V1 \
                        actionGroup.createActionForEach$message(list, agentSel);/ C( |& m7 w3 h; s) D4 t, E
                        actionGroup.createActionTo$message(this, swarmSel);
& }/ y$ O* s8 M. T5 m6 E                        schedule.at$createAction(0, actionGroup);
( }( m, h$ M6 t8 E+ e! p3 R2 C* W                        schedule.at$createAction(1, actionGroup);3 b$ l6 t6 d( U7 A
                        schedule.at$createAction(2, actionGroup);/ x; ?5 l0 D. R# Z: v+ e

/ L* ]- z5 D! P+ d0 o7 N                } catch (Exception e) {
) J$ ?& ^+ _* x# u# [                        e.printStackTrace(System.err);
5 s  e8 |1 p7 ?  U+ ]+ a% J$ }+ ^' ?                        //System.out.println(e);
& j. v# H  R+ W$ K" F: G5 T% f                        System.exit(1);% T! o2 `' m' h$ C! X, t
                }
1 q; f3 b1 N. Q# ]3 [; n% w
4 w' `& R% {3 F1 N6 P7 w: V
& O0 C. s) w! Y; Q7 r        }
! p9 T/ k) N) n" x2 Q/ _! z8 \( J, V3 }1 }/ r1 g( I; U
        private void swarmSetp() {) y: e; v' G% u: {/ G
                list.addLast(new Agent(Id));
8 l$ b2 N9 w# M* }5 D7 y                Id++;$ F1 X! O! m, h# S, H6 Z% I8 u
        }6 t: L8 J8 j6 [# Q! J
& n- _* H/ C  y7 ^
        public Activity activateIn(Swarm context) {
% a( E3 l0 j7 f( o' e" n                super.activateIn(context);
1 h' ~( T& y0 j1 O# d9 V  d                schedule.activateIn(this);* G6 G9 _4 \: h
                return getActivity();
! p( V6 T: f* ?; ^+ h( w  d' c3 m        }
, w0 k# K$ V) E1 n0 l9 s' ?4 P& \1 U+ T# h! @7 H# r
        public static void main(String[] args) {
5 `$ f2 d8 U  U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ I; a3 i5 d/ P" {* |
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 S3 n' b! p+ h( F                swarms.buildObjects();
( v1 v1 o' Y' A. a% W& L% y+ a$ L                swarms.buildActions();
2 V& S9 w4 s/ m                swarms.activateIn(null).run();) V$ z% `6 o! x# R. j; _6 K6 ^
        }
( s$ v, {1 \1 q/ q  G. Y! x& u. @7 J, _: X' W0 k6 `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-6 14:13 , Processed in 0.014533 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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