设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13928|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" J- f1 c. ]# t, p, t; e+ B+ Q6 Q/ s- W) C/ _$ O  O8 L+ G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 |8 ^3 U( l9 D1 n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 ~1 w. E$ |4 V9 Oswarm.SignatureNotFoundException
" G; S7 o9 U1 Y+ z: u        at swarm.Selector.<init>(Selector.java:76)- V/ `6 v- W/ C' T: `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  H8 m) U" D* e7 t1 v" V
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" c1 A; k# A0 d
' x9 z2 {, Q* @5 \
( R* x, ]" U1 R4 G  uimport swarm.objectbase.SwarmImpl;
5 s/ D! W8 Y4 v3 yimport swarm.objectbase.Swarm;
* K' h& ^+ Y* v, X: s1 X+ l) ?import swarm.activity.ScheduleImpl;
  Q; O: {7 i$ K/ I* E& D0 rimport swarm.activity.Activity;5 Z, J  Y6 F3 @" }
import swarm.activity.ActionGroupImpl;
) ~3 _% L/ ^' eimport swarm.collections.ListImpl;
1 z0 A3 T# T2 Q. oimport swarm.defobj.Zone;
5 E& U. j  |( t; ?3 t: M; N" S* Ximport swarm.Globals;
5 \  }# }" X8 _( @4 _, Oimport swarm.Selector;
( u- K' Y* i; \% rimport swarm.activity.ActionGroup; ; B8 k3 b$ U2 W- c4 S/ o0 H
class Agent {
3 K) @" _9 C9 ?2 Y2 R        char id;
' F% R( C8 S1 P: y# z- P+ v! p4 O$ Q
        Agent(char id) {0 |$ U( y/ b/ L& v& |
                this.id = id;
# Z  K( O# W4 b1 v( s; ^        }% z' G: `% g- h4 O0 U6 i
% T# ^9 a$ c+ P( S% V
        public void agentStep() {
! t& p6 L* A/ C/ H                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ [3 \' P# Z9 a3 ?2 X4 G        }
( A: y* T# d% T}7 C! C+ k( O8 R% P4 n. X6 B

+ E3 i. ^6 a1 T0 b9 Lpublic class ActionGroupDemo extends SwarmImpl {
* o) f; t" v+ A- m1 c" i' f        ScheduleImpl schedule;8 q( L% }0 W3 j5 G
        ActionGroupImpl actionGroup;
$ I4 r& s* I; F" s4 n        ListImpl list;1 v1 c  Q5 U6 Z
        char Id = 'a';
; y1 \: a% o4 T; b& m2 A, `6 f, w/ b' n8 b7 p! o, }3 ~
        ActionGroupDemo(Zone aZone) {
2 u: D& C1 w0 s- i1 Q: t) T                super(aZone);
$ V( |  s/ c( R" Q2 b. {                list = new ListImpl(aZone);
* I( I2 y+ i% J; t( h/ X6 C1 V                swarmSetp();
5 b1 |: P: C6 s5 o  G. w6 h% C                actionGroup = new ActionGroupImpl(aZone);
# ?' `7 e( w! Y& C& t7 t( u  ~                schedule = new ScheduleImpl(aZone);3 U" m) u1 d9 t) t- m
                try {
7 Y/ R$ m; l2 z/ {, s. ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- C$ z: G3 Z8 T/ y8 d* j) d* C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 I4 G5 y+ L2 F  M                        
) E# C. \* k. W+ ]% ~                        actionGroup.createActionForEach$message(list, agentSel);
8 q! y9 y/ d( M7 a- R: y" }                        actionGroup.createActionTo$message(this, swarmSel);
  v; L4 i8 d4 Q* p1 r, k, S                        schedule.at$createAction(0, actionGroup);9 |3 \8 f1 A8 }
                        schedule.at$createAction(1, actionGroup);
; h; s! ~) y" a) D2 X                        schedule.at$createAction(2, actionGroup);  T8 Q6 z% J$ k4 a  p% d
1 s8 ^# z* Q6 G( {! e. G5 v  ^) p
                } catch (Exception e) {# s2 t" k6 y7 D( V1 d
                        e.printStackTrace(System.err);
* g# l. M! T( O0 `' Z4 b! W                        //System.out.println(e);
3 K; T' J( l7 j7 [                        System.exit(1);
* {5 W3 g+ I. a1 s& B( c                }4 L2 c7 d6 Y# \. ~1 [$ ^- k
8 n* i* @+ S- G# y
3 i0 V8 x/ a& y# Z0 g
        }8 X1 I2 P  c$ T3 l. m# R

+ K" p* T! V" n, i4 U5 ^        private void swarmSetp() {8 D# J' Z' k/ @' X
                list.addLast(new Agent(Id));1 O8 N9 S4 M6 @5 C2 {6 b
                Id++;
% U: ^( r3 N9 ^" \3 @        }
/ j$ C3 u) e! f( W8 w  n( C' V" Y+ K. y% ^7 _- C
        public Activity activateIn(Swarm context) {
" ~. B* Z6 J1 {- P& }/ u                super.activateIn(context);
' p* ]( U2 a5 h% v$ C) c                schedule.activateIn(this);0 F  d4 Q" w. J  G$ n5 p
                return getActivity();
$ L; h6 l0 [4 S6 P  u, |        }
4 V! w* j" m$ a! [# k/ f7 i  u* J; |- `
        public static void main(String[] args) {/ |# l) u. V8 @* c' o5 n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 Z# q# j1 Z# n, f% M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. F, o, ~7 o' J5 y1 ]2 ^                swarms.buildObjects();/ F; Z( x4 X/ s7 Z1 U6 I
                swarms.buildActions();+ ^& h) i5 A) z' b6 B# K4 c" |
                swarms.activateIn(null).run();9 N, H. }0 i4 W) @0 h
        }
7 {4 C8 l5 I1 X" N& E- x7 V3 n$ A
4 ~/ o0 v1 L1 k1 s% s/ c* s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-21 23:13 , Processed in 0.014557 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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