设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6856|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 l/ E  F  f$ }  N- Z
6 c9 W. u$ t6 }- R6 a) X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ G3 w5 Q" Q- u  h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- T. l: a7 {6 H3 S
swarm.SignatureNotFoundException! E* [9 a5 e8 z
        at swarm.Selector.<init>(Selector.java:76)- M# w5 ]' Z+ k; n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 K4 U/ d8 B; ]8 t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) z, V9 X; G0 f, g# j. y
1 e3 e0 C5 F& ?5 u( I& ?# I( p" g
# u: P2 p5 e. @
import swarm.objectbase.SwarmImpl;
; }* N1 q! F6 K: b* W5 V4 zimport swarm.objectbase.Swarm;; x4 ~# y) Q# T2 c, I
import swarm.activity.ScheduleImpl;
2 G: C2 E5 Y$ k6 [2 Oimport swarm.activity.Activity;. `% o  M5 m+ b( z
import swarm.activity.ActionGroupImpl;
  I+ t4 {  D4 Vimport swarm.collections.ListImpl;/ V, j- |1 k, d# M
import swarm.defobj.Zone;
9 s* m3 |. M" W5 m4 |* b- Limport swarm.Globals;
8 m4 O) k/ ~& rimport swarm.Selector;+ b$ f. a1 l4 [) ?& h- h9 Y9 E
import swarm.activity.ActionGroup; 8 J% t7 w8 K, P$ L2 P
class Agent {$ u: l1 F1 N7 B8 u% {' @8 h
        char id;: H4 ~8 H4 l: d6 D3 x

$ N% a) ^. @9 j- c/ E9 x0 g( {        Agent(char id) {# J; m, C  H- }8 P% W
                this.id = id;  S: T3 r+ K$ t' z7 o
        }
7 a. _3 _7 k! t; C  O$ _2 }) I/ B2 {2 ~! G
        public void agentStep() {
! I. D4 ?2 d( P! \$ v& h                System.out.println(id + ":" + Globals.env.getCurrentTime());
# z7 C8 ~) ~9 {" i        }* b+ d/ G7 ~4 T& [
}' R; j) ]: t- `7 u) f
/ k# |# K0 p( @
public class ActionGroupDemo extends SwarmImpl {* Y* v1 U5 K* r5 ?  `4 M
        ScheduleImpl schedule;. Y6 a  N6 ?3 z2 L# j
        ActionGroupImpl actionGroup;
9 T: x# ?/ O& ^# S6 v6 {( N# n        ListImpl list;& T7 {( q# ~. R. x: ?
        char Id = 'a';/ [4 {3 T6 w6 A9 y) ]
6 g) K4 \! R* L( F; O% Q
        ActionGroupDemo(Zone aZone) {  ~) M, h9 ]) q3 }
                super(aZone);* U# l3 e9 J% b, {' Q
                list = new ListImpl(aZone);
3 G1 F7 A/ ?, |. N1 ~                swarmSetp();5 f- b2 o. X, M9 V( H' Y& a
                actionGroup = new ActionGroupImpl(aZone);) X* L3 I- ~7 K' C+ [8 f  ~3 z
                schedule = new ScheduleImpl(aZone);
0 F% B4 B* ]+ V! R" i- u                try {# W0 k1 ^4 [* ^; \: b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 r% C9 d. B# f+ C$ |  H0 ~# S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 Z; m/ {# X, v. k7 e' C/ x                        
: p' b( p0 m2 O- S                        actionGroup.createActionForEach$message(list, agentSel);0 b$ G3 X. L- m
                        actionGroup.createActionTo$message(this, swarmSel);+ _0 X8 F2 o7 C7 K9 `9 A
                        schedule.at$createAction(0, actionGroup);
! k  ]4 ^; F# d# [                        schedule.at$createAction(1, actionGroup);
5 U, v+ S1 u/ @8 L6 ~& x) [                        schedule.at$createAction(2, actionGroup);
6 I8 `9 x/ E) v8 Z
! _+ N4 J% s% t  h3 D2 A                } catch (Exception e) {2 W! S1 g* @5 X" W
                        e.printStackTrace(System.err);
6 y" G1 a, p* N: J. `# f                        //System.out.println(e);
: r% L4 |, ^% M  H/ d  u8 x                        System.exit(1);. p5 T2 z/ K4 I" }! H
                }% n8 N( f8 ^, S" f: c1 x

* v9 y9 Y. n! @8 _' R; J' x" v' p2 V3 D- s: w
        }( O2 z  y: s* G; \( [

, r0 L7 i& l& {+ H        private void swarmSetp() {
* L& T  i+ ~6 M% g" @( A6 Y% s                list.addLast(new Agent(Id));" ?" q) Q0 x* f3 h6 y
                Id++;1 D6 u; j2 x  v* y4 L9 Q' T0 f) t
        }
/ X( x& c+ a$ a' `3 a6 l, R1 [! O" s
' a% Y6 d+ o) f5 h        public Activity activateIn(Swarm context) {8 q; v4 S7 P9 [+ e& C% d
                super.activateIn(context);8 }2 k: E8 O7 A
                schedule.activateIn(this);2 ?9 y- p! i5 H; v
                return getActivity();9 }! V5 j% b) I- G) l0 o" l
        }0 l* X% W6 T8 d: V
8 H5 h6 ]: y3 t5 F6 k) J9 E
        public static void main(String[] args) {8 g4 `7 z& f- |6 Q# F& a6 w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 S4 {- v1 V# c9 p3 s! O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 P9 d" }- B. p$ B8 ^
                swarms.buildObjects();4 ~4 @8 C' g+ L7 t8 h1 R* ^5 m1 x: ?
                swarms.buildActions();
. G5 i1 F$ y3 E                swarms.activateIn(null).run();2 p5 i: U7 z% ]2 ]1 r# s6 S% h: Y/ c
        }( n; B2 n+ Q, @  X" x7 Y, r
% ?2 ?" c& k' }; O6 [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 08:18 , Processed in 0.017882 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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