设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9531|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 N6 Y, N* E+ U
; Z5 n7 R3 @- K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% |* {- F" A, n; |0 N0 G+ U' _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. o$ g% e: ]3 m7 a3 l3 A
swarm.SignatureNotFoundException0 n( G1 K3 i' \# F5 R
        at swarm.Selector.<init>(Selector.java:76)
" w; R( M- u7 @# @; s/ U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 Q  [; \& b2 b9 ^9 X3 G
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  y7 [7 H, Z% {7 u8 r8 U. ?
2 E7 H% {) |2 q$ I, J
1 k: U$ c2 n8 R+ a3 vimport swarm.objectbase.SwarmImpl;
+ F6 f% _* D, ^9 f" R9 y7 o, Eimport swarm.objectbase.Swarm;
+ a0 N1 g; s% s, s! Simport swarm.activity.ScheduleImpl;
) a6 [; x8 a" V* vimport swarm.activity.Activity;% `0 W# H2 |" s& P* p6 u& i
import swarm.activity.ActionGroupImpl;
3 Y! N: {/ e6 X7 Q! gimport swarm.collections.ListImpl;: f  U! F) G/ X9 @& Y# w" J
import swarm.defobj.Zone; 3 P1 k. A, `$ x
import swarm.Globals;/ H- ^5 |4 [6 I7 L! T
import swarm.Selector;! N4 {- _5 x$ ~; _$ \* Z6 y
import swarm.activity.ActionGroup; 3 e' g4 c# g" _
class Agent {! r7 Y* w* ^/ f% O: K9 E7 p' \; Y
        char id;
' p7 q, Y7 s; u! L% O( j: B- N7 Y# c9 ^8 n4 P4 y  Y- X/ w  S
        Agent(char id) {4 U3 |1 f) N/ Q4 Z  W/ N, G1 k
                this.id = id;
: J% I' d; `  w- C9 r( {6 i% d        }
2 O8 q0 M# Q% s  l# w7 w# g' G' e3 b, m4 @  o4 h% n) ~# C+ M
        public void agentStep() {
1 \5 v) i2 @& g& Q9 Q& l" s                System.out.println(id + ":" + Globals.env.getCurrentTime());% e7 [+ i$ D2 ?0 b0 g8 r
        }
: M3 t. C* [) Q) Y% _6 K}
, I. |7 C( z6 h1 f, j
8 r* b, x% Z; u/ F& x6 X2 ~* kpublic class ActionGroupDemo extends SwarmImpl {
# u6 N; q6 H. z- s  i* ^        ScheduleImpl schedule;
  u% N- L9 i! v! X. I) g. i' F) b6 o        ActionGroupImpl actionGroup;
5 L9 F2 N4 H: U        ListImpl list;
5 v% `) k: h4 A. E        char Id = 'a';8 u6 g  L# ~+ c

5 Q0 h/ x+ [: ^, b  s$ y& A' M        ActionGroupDemo(Zone aZone) {
; r9 _9 e7 P0 h2 S3 T0 ?$ `                super(aZone);& D, @! F9 R- |; q/ M
                list = new ListImpl(aZone);
: h+ \$ `- P# S; P* Y! k                swarmSetp();
7 P  y3 H0 v7 C$ S7 s. T7 n                actionGroup = new ActionGroupImpl(aZone);% v, w7 t/ X( v4 \6 t# L
                schedule = new ScheduleImpl(aZone);
' N9 {0 [" i* Q' P$ O& ^' h                try {2 G: S& V! J7 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. i/ m" F8 z/ A/ J* X0 a+ F0 P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 i, F! S( Z0 G) i; J# n                        
  ?# `* s% y# A. P9 B& r                        actionGroup.createActionForEach$message(list, agentSel);
' [9 I$ M+ m& `+ u/ d                        actionGroup.createActionTo$message(this, swarmSel);
$ d. j* F5 W+ @% W% h                        schedule.at$createAction(0, actionGroup);# Z8 ~+ d2 l0 e4 t6 k; I. o% {
                        schedule.at$createAction(1, actionGroup);
5 @4 W" R$ J, j( l7 I# [4 Z: @                        schedule.at$createAction(2, actionGroup);& r% a) k6 P% X; {

& [+ W0 O' O, w7 }                } catch (Exception e) {" K5 e$ u6 ]6 E
                        e.printStackTrace(System.err);8 o, Y/ G# Y; i" X) e
                        //System.out.println(e);% {& ~) L( o' P- C1 c9 p
                        System.exit(1);
5 }: P# V% V) S                }1 l, Y6 S8 d5 K" m( Y

% D3 @9 f3 f& ]( B3 o5 K; m0 W- _8 k0 s' y0 W  g6 Z
        }' Z. [, b3 `# S( b7 A- \" I
( E: p  [+ M$ ~( P& _5 P& _
        private void swarmSetp() {
  k' n  T, M8 s3 H6 y% t                list.addLast(new Agent(Id));( X" a+ A, u+ U' V& Y* w, k" j
                Id++;
) d8 f1 B7 V& \2 Y4 F- S        }5 y0 r; p! u2 z, h, R

8 O& f' u8 p' t& `' W6 N        public Activity activateIn(Swarm context) {( i2 ~7 b. w+ e) t# W
                super.activateIn(context);
5 m/ y9 c9 ^; `& G) o* l, }( {                schedule.activateIn(this);9 R. ?3 i5 g/ {% D4 a! {/ r
                return getActivity();) s+ g0 a+ v8 p8 r
        }7 v1 B$ _9 v, E& M# l

* A5 |$ ^  E' Z# |" i3 f# K6 l        public static void main(String[] args) {
6 y# \) O/ p. y" i* @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) V, B# j5 q" F  t6 s+ G/ l$ w# v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 c" q) @2 P! `; t( F; E9 s2 o                swarms.buildObjects();0 q/ X: n5 f# C0 W, F2 H" \4 P
                swarms.buildActions();
7 T4 S5 m/ V* I                swarms.activateIn(null).run();
) ?3 A+ w0 Y! G! F! M% m' U: w/ t7 _        }
" g  L/ p/ K. c8 |
! I% Q9 R+ @& K% X4 P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 16:09 , Processed in 0.024063 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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