设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10885|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; m$ q! i& b4 ?( E
( z, b! t) s/ F7 ^( V! Q9 e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 t( n1 @9 w6 K" a  Y8 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' o- X$ ?) W2 F8 R) vswarm.SignatureNotFoundException3 {" Q0 E1 `7 b( Y6 H
        at swarm.Selector.<init>(Selector.java:76)6 E. {1 r! l/ B, v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& `4 v% f  _0 X, V3 I5 I
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ C0 Q; X5 g; @$ J
( |( y; t9 T& @6 l; q
% B1 M$ m, G. r7 E6 d( ^import swarm.objectbase.SwarmImpl;
  T4 d/ ]' H6 b; V( H% O& @1 P3 n& Fimport swarm.objectbase.Swarm;
+ u7 x  f) i3 Vimport swarm.activity.ScheduleImpl;& e3 X5 Z, k1 F: V8 V7 i
import swarm.activity.Activity;5 U5 y. |( \; U" }+ W
import swarm.activity.ActionGroupImpl;
5 A9 p2 H4 w$ |import swarm.collections.ListImpl;
2 z# g0 l( o6 G4 D" {+ E4 ~import swarm.defobj.Zone;
+ p" T* e  E/ V. m- D; yimport swarm.Globals;4 L4 K3 `5 C# y* O- J, a/ ?  e. w
import swarm.Selector;* Q$ O9 U' w+ Y# [  w- x1 h! x
import swarm.activity.ActionGroup; ! x) P4 I0 X* G) v+ h
class Agent {' ]; ~  W5 r9 {! i: h  I
        char id;; s* ?/ s5 [- a4 c& [" c
/ b7 K9 ]# l3 h0 E& ]6 o% @
        Agent(char id) {
% J4 M0 O$ ]/ {7 q) y$ z                this.id = id;# I4 ?+ Z0 }$ J3 x0 w+ I
        }
# b! ~8 P6 N% i% q# y# b$ r: w8 f  p; h) L7 K
        public void agentStep() {7 H; v6 c1 k8 {- }' M
                System.out.println(id + ":" + Globals.env.getCurrentTime());% F6 L8 ^/ j. N0 `1 o: [! b, t
        }: B7 }" y5 x' E/ I* c
}
9 G, M1 W$ Q+ u4 l0 |0 s- ]( e2 M$ U/ N$ f4 [
public class ActionGroupDemo extends SwarmImpl {+ M' L" r& t8 Q
        ScheduleImpl schedule;7 X  T% x. y7 U# j7 H, A& O; ]
        ActionGroupImpl actionGroup;
2 W2 m9 }! p) P9 v  ]7 N6 p* m        ListImpl list;) W% H  n( v7 z$ e! B& e
        char Id = 'a';* ?1 y3 L8 A6 ]3 r

/ }% x. u7 y7 L( b        ActionGroupDemo(Zone aZone) {
" R7 Y/ k- n) c2 ~( Z, ?                super(aZone);( ]) u  E. T9 o8 l  C: A
                list = new ListImpl(aZone);
# u3 ~: U4 r; a1 T' v4 M2 z                swarmSetp();0 Y: x  Z8 ?, _# Z% Q, t* Y
                actionGroup = new ActionGroupImpl(aZone);, y- w, e+ N3 E% d5 ~0 T
                schedule = new ScheduleImpl(aZone);/ j7 Z% }% a5 U- y- M
                try {4 h# K2 F& ~* v8 [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ B, o( E& ], t6 W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) Q, X' v7 v+ w6 H7 J
                        % h" j" n( S; d
                        actionGroup.createActionForEach$message(list, agentSel);5 ?! H3 G; b) O+ l$ y
                        actionGroup.createActionTo$message(this, swarmSel);
6 Y4 Y1 e% a6 X; a                        schedule.at$createAction(0, actionGroup);4 a& M) ~# _% N! L
                        schedule.at$createAction(1, actionGroup);$ Q2 N% O; x) f5 ^1 ^' |3 n8 m
                        schedule.at$createAction(2, actionGroup);
, J" G7 P( q, s3 X* w5 K6 @5 }& H$ Z
                } catch (Exception e) {
5 Q7 @2 s' D2 i& Y                        e.printStackTrace(System.err);
; a; j! A; T. d3 _; ?$ w6 E                        //System.out.println(e);
1 P5 a+ M  C1 D1 E/ Z* g% ?: E                        System.exit(1);4 p6 h4 F5 H: g
                }0 o7 W0 B8 D2 N# f5 a5 M; E
$ I7 m0 ]9 Z+ U; }) f

2 ]& s. g, P4 _: L( l' Z        }7 t3 w2 m  u; u9 f! Z6 h0 ~9 W
% Y' T) A) W8 N6 G3 e/ N$ Q
        private void swarmSetp() {
8 A$ V# ]# e5 U- w0 l                list.addLast(new Agent(Id));. B& [9 T7 ^3 s. c
                Id++;# J( q- X& j; ~$ c* G/ {
        }
1 }$ t$ y- H# _( D9 Q4 B# o. y
1 e5 |- z- z; C        public Activity activateIn(Swarm context) {* O$ K: A+ L( ^
                super.activateIn(context);
+ W: c- d' [% t" J                schedule.activateIn(this);
; J$ F! I, M4 [$ h6 j2 m4 Y4 y0 H                return getActivity();
, M2 R1 x6 N( b; A, s& H+ |        }
& \# o) p1 x8 X1 j
: W/ f7 p8 Y& [+ N        public static void main(String[] args) {
8 V3 \, a5 }- V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 @! J' |: t/ y, P8 o1 B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 O7 G$ \" ~6 l, k
                swarms.buildObjects();
7 `; p8 ~. T; l* K$ Z1 f                swarms.buildActions();
  M, e1 p. n6 }; m# v& m5 g: U* W                swarms.activateIn(null).run();
" B- ^* h0 w) j# {! M        }. b) ]! n6 o- f5 Z6 w6 e

. D+ s! B; x" n6 A/ x( X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 14:26 , Processed in 0.013802 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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