设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8107|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' W/ G, l% ?6 y
9 I) @7 N, M- x( D$ ]- m. {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( f5 p. y1 \! i- b) b9 d# D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ C; h9 x4 A/ [8 G/ {( K
swarm.SignatureNotFoundException
+ j8 j  m6 [; U! j3 K1 y" d: T7 A4 [( e        at swarm.Selector.<init>(Selector.java:76)
2 M6 C& j3 ?" k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ s" Q- o2 S  @8 C* |5 i' a4 i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 ~2 p1 e5 D/ y4 J; o& `) V- b4 ~8 F! b3 l% S: d

1 S" p/ m# w4 ]1 i& N+ Vimport swarm.objectbase.SwarmImpl;7 j4 N! o8 B6 m" S3 A% {3 a
import swarm.objectbase.Swarm;
" P; X! S- m" G( e0 |. ~import swarm.activity.ScheduleImpl;( |* B# N  j& b5 [& P- Q
import swarm.activity.Activity;" `: W  v- u+ K6 m% Q
import swarm.activity.ActionGroupImpl;
6 _. c( n: K" Mimport swarm.collections.ListImpl;
3 a) b( @3 X! s! `4 simport swarm.defobj.Zone;
, w7 ?8 r  C( W( X1 Nimport swarm.Globals;4 h8 Q7 V% w3 R- y: O% ~5 }
import swarm.Selector;& h; F. f; l% M* u
import swarm.activity.ActionGroup; 9 L  F( m( B2 X) _+ Z1 v7 {
class Agent {* j6 B; e* t' p: _# F$ g
        char id;, V  h" D/ y5 q# K& {
- L" M7 a3 E+ q
        Agent(char id) {4 A! s9 D- N. r% Q: N% f
                this.id = id;
7 C' U; @+ [: `+ ^        }
; ^4 p! P$ `3 @" ]7 S  `
. n0 p# X: U) w+ q. W        public void agentStep() {
# ^3 {& @; J* U# O                System.out.println(id + ":" + Globals.env.getCurrentTime());( J4 p: x' z+ [- o0 N! V
        }& K" z& C, w+ j/ t
}+ G# G/ g9 {! D& `$ @3 s

) k# F4 P) _/ j# v  c$ Qpublic class ActionGroupDemo extends SwarmImpl {8 l- F4 X& L3 J* @
        ScheduleImpl schedule;
8 W' i- J; Y# [& V        ActionGroupImpl actionGroup;
# Y$ w# L& J0 Z- E/ F9 Q; }        ListImpl list;+ K# e- }4 y+ L' F
        char Id = 'a';
: G7 ?8 o/ U- K$ s+ W  h
9 L1 N, q. M+ p1 v        ActionGroupDemo(Zone aZone) {: b$ x# x$ T: G
                super(aZone);7 S6 H$ E4 q4 b2 E: m
                list = new ListImpl(aZone);  k# `% @& k2 _9 V; ~% y
                swarmSetp();
: b! a& A6 y: u) n                actionGroup = new ActionGroupImpl(aZone);
3 N" j1 g" ?* }9 k/ ^                schedule = new ScheduleImpl(aZone);: z, u2 ?) u: ]0 D% F8 E
                try {
3 m6 @" q% z; {" f- N) Y0 F! j  q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# \5 M" L5 q( `; z0 Y) Y  T$ p2 c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' ~+ T$ n' H8 j                        * m# w2 k- l& D" d7 L  K+ H+ Y9 q
                        actionGroup.createActionForEach$message(list, agentSel);: r: Q" g/ q0 S* ^! M' X
                        actionGroup.createActionTo$message(this, swarmSel);
/ g- c; `% x7 c5 N4 t+ Q! z                        schedule.at$createAction(0, actionGroup);2 F' p  a( I$ n1 c. G
                        schedule.at$createAction(1, actionGroup);8 ]- G' z. q" n, R
                        schedule.at$createAction(2, actionGroup);
& k& m/ U$ W' @0 t1 B1 ]* ]
% A  f# u  k6 X, K& i/ z. B) o$ c                } catch (Exception e) {
  K8 f) N7 M" {                        e.printStackTrace(System.err);
$ u6 [, ~! [# l9 ]0 o7 j, y                        //System.out.println(e);' o3 l1 m! S3 F/ I2 p2 L# n
                        System.exit(1);
7 }6 z; g$ @, W                }
4 _. }8 J0 z  i5 A0 F# @. {* |5 R- d1 {1 G# \
) t" I& A, H2 r) `$ [1 {, q; g
        }
7 W( n( q0 l7 h* H  D9 k
1 k( b3 _8 ~0 z  ?        private void swarmSetp() {
3 o6 j1 i9 t9 v  i  P- c% U                list.addLast(new Agent(Id));
3 ?; z+ [% h& e; s                Id++;8 A6 f1 [5 j7 X3 Y: @, S+ H/ T
        }! f& w; e2 ]/ _; j
- ?' ^7 s8 Q, i% j- |! G
        public Activity activateIn(Swarm context) {7 C' }, x# g& y
                super.activateIn(context);
  v0 \! [! X6 v( P, f& z+ S                schedule.activateIn(this);" I$ \' H: n) U0 k
                return getActivity();
# t' A( L1 @1 p9 G% S) Z7 n        }8 K' b  \: z/ q. n

$ H' S9 h; B* u        public static void main(String[] args) {
4 B+ M+ K3 ?: t. |4 Z3 t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 Z' o4 q: I* B, U* c- x: s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  E+ O& T9 H3 n& s; S- O" _: n                swarms.buildObjects();# Q# @' A/ ?6 U( N
                swarms.buildActions();: J9 M& h2 V2 [2 o2 _. h. @7 F. ~$ m; R
                swarms.activateIn(null).run();, M3 F0 g- J. ~) l) U
        }/ @! |1 h; A/ n
4 V: Y! B2 N# L8 N' s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-30 13:26 , Processed in 0.015415 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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