设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8223|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' ^/ C* ?/ H+ l4 F9 x6 K
$ B* ?* C8 x2 {* Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) H% t1 |5 r. N, I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 z$ ]3 A1 e! V
swarm.SignatureNotFoundException
/ [1 C+ f& l! E! ?* g  x        at swarm.Selector.<init>(Selector.java:76)- t1 j% S3 u7 F+ S9 p
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 C- h& _' E5 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ q) N' G* w4 {
9 p2 }+ B$ ]6 ?

4 m% s; U- B6 Y1 l" Vimport swarm.objectbase.SwarmImpl;
$ F$ Y: ~+ z( D9 f0 R) f9 d4 J- Cimport swarm.objectbase.Swarm;
3 k0 M6 T( z. ~6 l5 l; Nimport swarm.activity.ScheduleImpl;
4 p& l0 V$ v- s: [, e2 \$ iimport swarm.activity.Activity;
( D& l; a5 a0 limport swarm.activity.ActionGroupImpl;& r' ^5 ?. E- x% H7 v
import swarm.collections.ListImpl;2 g. S2 H! b8 x0 N1 i
import swarm.defobj.Zone;
; \8 b0 h/ x3 kimport swarm.Globals;0 Z- ]5 ~4 w' h3 y. ~1 J  E8 v
import swarm.Selector;
: Q3 E# G& N. q- `import swarm.activity.ActionGroup; ; o, ^7 X( w9 F
class Agent {. k6 P# x3 ?: ~; M6 J. h) [
        char id;/ q% u$ Z0 Z' A: S! x
2 F1 L# S0 _( @! V6 q4 I% u1 I
        Agent(char id) {1 C8 P6 Z! ]: f# j/ n( |1 d
                this.id = id;5 y5 K- l4 Q, M/ ?" B2 e
        }# o: Q! ^1 J0 m: e
5 j/ d7 m4 j* q) \% [
        public void agentStep() {
4 Y/ w) u- w  r                System.out.println(id + ":" + Globals.env.getCurrentTime());
# Z: ^$ ^8 ^  a+ Q( v3 I: z! j* z        }
; T$ i3 R& U. T" N3 J8 q) B}9 p) K+ l8 X& y' M
$ H5 n$ E7 }& X/ D5 e- R
public class ActionGroupDemo extends SwarmImpl {% T% K7 K6 M% z* J2 q
        ScheduleImpl schedule;$ @! C" f4 q( M2 U
        ActionGroupImpl actionGroup;
) f" {# a2 n/ i        ListImpl list;2 K7 f* a( R8 F3 I5 ~
        char Id = 'a';
; E9 g6 l7 N  Q: P5 n4 J, o" T( g5 J8 a: |, }+ R4 }6 Q
        ActionGroupDemo(Zone aZone) {( D7 R/ g. E2 D3 x3 `3 B
                super(aZone);
& h8 k* _/ N4 [                list = new ListImpl(aZone);
1 k3 F/ x6 l  q2 ~$ G                swarmSetp();+ k! J% q. F( s, c: |+ C- s
                actionGroup = new ActionGroupImpl(aZone);
8 A+ a% @2 w" R3 k                schedule = new ScheduleImpl(aZone);6 y/ z; T6 Y0 u+ r) U  G
                try {& Z# }3 p) Q) E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% J! w+ K7 B5 B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ i+ Q  ^8 u7 q! {5 G1 N" N
                        9 P& K4 Y) E- j: e0 z, f1 F
                        actionGroup.createActionForEach$message(list, agentSel);
# y7 H4 S5 Y- X                        actionGroup.createActionTo$message(this, swarmSel);
: r. z: Z4 l: H: x3 g1 S) R                        schedule.at$createAction(0, actionGroup);
% w. `4 q3 k9 S% n$ O2 H                        schedule.at$createAction(1, actionGroup);
8 j' S/ |5 b6 Q- e: p                        schedule.at$createAction(2, actionGroup);
3 w- b4 J+ I# V5 S) @/ \9 ~5 B; K. ]! o
                } catch (Exception e) {
7 T" s& O$ v3 J+ f9 R                        e.printStackTrace(System.err);
6 o1 n" o6 U' Q, H                        //System.out.println(e);; g0 u1 _* Z9 `* P# k" l
                        System.exit(1);. p' |/ L) r* o
                }- Q: G; [% n7 r; W, `) m9 a
& |0 c- g1 q  x% P
& o  p4 A3 ?) ?& o& M
        }; }3 _) ^# g) b$ r) h8 |7 s& T

. \& S( w, [9 U6 m- f        private void swarmSetp() {
! p. E, r: D' L( ?) ~' l4 @                list.addLast(new Agent(Id));
! g7 W8 a# K6 M7 f5 j8 P                Id++;
# _( @- h5 P0 y3 U        }- D9 L0 f8 W$ }* J
. |6 s3 c. B, y: R9 f
        public Activity activateIn(Swarm context) {( R3 t* A! `! ~# s( N
                super.activateIn(context);
. Q; A/ m1 a7 `9 I) ^& L- M  q1 v                schedule.activateIn(this);+ j  ^, L: S8 x
                return getActivity();$ {7 [) U, g8 J# k3 w3 v
        }
1 I! V+ o4 x7 T! w2 k# F2 B' Z8 q: R6 u
        public static void main(String[] args) {) a) t3 I; @( x) l# q3 Z2 r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 A" J3 ^+ F  k$ }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 K$ u& @. h1 u' u9 U, ~& L- M
                swarms.buildObjects();/ X3 p8 n2 N4 o6 x1 L
                swarms.buildActions();" o. B$ y0 J, t! m7 q4 x0 u
                swarms.activateIn(null).run();, v& t$ C3 @+ h
        }
( T: g1 H' u. t! n5 v# Y+ n
7 D) \$ x7 T# ?0 P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-3 23:37 , Processed in 0.022529 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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