设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9028|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  V& m2 p8 t( I" ^# G9 v# {3 }) u; u' S9 `  r6 }: Y5 P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- g* Z# |3 [8 g8 G" m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' l  s+ k) E4 E2 W
swarm.SignatureNotFoundException
# Q, b/ Q$ [& V( x, x4 ?# f        at swarm.Selector.<init>(Selector.java:76)
4 E- v5 i$ x' H- p% w2 q2 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" Y4 V) Y/ O& c$ ]  \' h        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( ]3 g( j( R* T) u0 u2 K5 x( U" W% |. p$ x% ~2 p/ X

3 c% g( l3 f" G, Gimport swarm.objectbase.SwarmImpl;
8 N& ^  _0 G1 ^3 U- H, X( jimport swarm.objectbase.Swarm;
& a1 [' R  L* k# L8 ^8 `) Gimport swarm.activity.ScheduleImpl;
/ k  p/ {) x; l2 u4 Q+ p5 nimport swarm.activity.Activity;3 s& T3 k" e4 O4 L& v7 {
import swarm.activity.ActionGroupImpl;
5 F4 O9 Q) {6 m  himport swarm.collections.ListImpl;
$ m) H# S( D; m) r0 Iimport swarm.defobj.Zone; " U( ~; e' b" Y7 `& {. t
import swarm.Globals;
: \0 X! C2 h; Z5 oimport swarm.Selector;) t- j. I+ H5 ?. V, }
import swarm.activity.ActionGroup; , n% K! }9 ^$ I9 c
class Agent {
' l' T" ]% }  S2 q6 C# y9 t' t- e- G        char id;% N9 ~1 m! H, R, u* ^2 a

% g! ~" G, I' p9 ^6 O' ^+ d        Agent(char id) {
' [+ J- P4 n& R9 U1 g2 ~* L                this.id = id;
/ [# n* u1 o, q) r7 b" L        }9 P9 o  h7 x9 X, Q: `* f8 K4 b
( q# _  d+ E) Y+ e7 [9 i
        public void agentStep() {/ t& l9 B8 I8 l( I0 R
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# z& W8 R9 g- K* H- ^        }. \3 P1 z* o; c5 T) \
}& e6 X3 u) g  A
1 ?" U/ r0 h( K2 `+ {
public class ActionGroupDemo extends SwarmImpl {
4 O4 P4 H7 J0 r        ScheduleImpl schedule;& c- Z* z+ R' Z5 P$ V
        ActionGroupImpl actionGroup;
6 H2 k5 D4 ~; t  P, C3 k* E        ListImpl list;
% F& y+ r/ w2 H" {/ }, A        char Id = 'a';, j, e# ^) Y; s; V- w5 d

' N3 h: |/ P9 L8 x6 U0 \        ActionGroupDemo(Zone aZone) {
8 l7 j9 D' G; a+ j                super(aZone);
3 k8 X5 e1 X% B                list = new ListImpl(aZone);6 _4 d) Y1 A6 }& C& }
                swarmSetp();% O2 D. g1 ?% c% e7 T
                actionGroup = new ActionGroupImpl(aZone);
% C& ?7 y0 a  [                schedule = new ScheduleImpl(aZone);# l4 |, R2 }( j' J  p5 B$ }
                try {
$ i1 e& v5 R2 F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  Y1 j7 t. l7 K& r& n1 F! _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, z& u8 o/ J, ^2 Y: {                        7 C' r5 |/ W6 ?  n9 g
                        actionGroup.createActionForEach$message(list, agentSel);7 D0 V$ f( V7 V: |
                        actionGroup.createActionTo$message(this, swarmSel);
6 d- K5 Z8 N5 S$ c                        schedule.at$createAction(0, actionGroup);
+ W6 i: n; |3 U+ n- v: w; @" |                        schedule.at$createAction(1, actionGroup);( P* ]- X: J: P
                        schedule.at$createAction(2, actionGroup);/ T4 s0 o& Y* d/ ~, L' D
& W" x7 w' y$ p% {) E
                } catch (Exception e) {
- Y; j# |  m5 `+ {                        e.printStackTrace(System.err);( i2 p- d! u( x. `1 ]) m
                        //System.out.println(e);
! J3 [' c3 G( I, D$ n                        System.exit(1);/ @* P! R/ m  e1 _. ^: d3 ]7 d
                }, J4 U7 l" h3 I# t1 U
" r4 F3 u- {/ {: m  F- }

, P  K4 T' J! B* D; x        }
! n2 r: f2 _8 |! Y: g
$ o+ ?0 a/ Y8 c" _        private void swarmSetp() {
; S4 s" ^1 Y3 q8 G. I7 N                list.addLast(new Agent(Id));
! [$ b  W) X0 P1 n                Id++;
" j* S6 Z, w2 l- j! c( H, @        }9 y. a7 Q9 a4 E9 f/ [' S& \: e
+ Q1 L9 E9 o0 E" x$ |* K# E
        public Activity activateIn(Swarm context) {8 G; B/ j; f! K$ L# B" r
                super.activateIn(context);
, |( u. s0 x8 B" s" P/ }! [+ P                schedule.activateIn(this);
( H& {! A; A9 x                return getActivity();( X0 d0 t# N+ ^7 _) f; M  i
        }( |7 y+ l4 `. V
' ?) R7 X0 C$ b/ B5 }3 m1 t1 ]. B
        public static void main(String[] args) {
2 W, c0 K% i. l9 M4 l/ C                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 G% X3 d/ l* p: P5 S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( D' ?6 _$ u+ i0 ~1 d+ K+ k& z
                swarms.buildObjects();
) M; V# x3 d' F! R" d                swarms.buildActions();
0 I& R$ W; G% I, l) l1 X& a                swarms.activateIn(null).run();
) p; P+ B$ i1 B# N# b        }( H/ U8 @. s: ?. S* A- Q

5 @( y/ g# M8 Z# q$ K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 14:30 , Processed in 0.024334 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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