设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10424|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % O  D, v6 ^& S- y
. d, d$ `' c0 n$ r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 |, I% X& E$ o; T; w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 p, s5 U6 W' P! N- f( h
swarm.SignatureNotFoundException  S4 ?6 v' W# ^2 \. S
        at swarm.Selector.<init>(Selector.java:76)3 S4 [  p+ D) w( L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 D% W# ~( p' M4 p        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ m; z" G( A5 ^$ F. b) C3 a3 u3 H, c" e) o
1 J* @4 _+ ^+ n  z  H. R& }# @; J
import swarm.objectbase.SwarmImpl;
/ g' S  ^% N, U) {! C+ Vimport swarm.objectbase.Swarm;
4 s+ ~* Q  o9 Q& k+ Y! K1 eimport swarm.activity.ScheduleImpl;: p1 Z; ?% t4 F1 c8 @! A$ F
import swarm.activity.Activity;
5 t* B3 a6 D4 y/ g; c' cimport swarm.activity.ActionGroupImpl;; c- f" B( g) R7 J
import swarm.collections.ListImpl;
! y) b' a6 J0 x* B. Dimport swarm.defobj.Zone; 7 Y/ p, `0 _: q
import swarm.Globals;
% L! N2 }# `* n+ m; Nimport swarm.Selector;9 r4 Z. R6 G, B4 o9 [. b% h
import swarm.activity.ActionGroup;
* N) y4 j: [. z! O0 Jclass Agent {4 Z# \/ r1 @& c/ |6 `1 e4 f
        char id;$ b- |( L. @$ `. f" J  X

9 \- Y. n$ b" x# `/ e' l        Agent(char id) {: k2 X" b, B7 A8 s7 s/ X
                this.id = id;( B# e! y# K; `& U& B
        }
4 B& M5 ?- w; D& S3 V4 ^% u% N* j! S/ |4 ^/ G0 S& O4 L! {4 T) w/ r! ]) f7 @
        public void agentStep() {; m2 A% F. Q7 _6 u$ H' C! F3 l
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 s: D) {' h( r$ _0 h# l- B        }
( P5 F( X9 F) Q1 K5 v/ w}& t" }( I8 K/ C0 G

, w! k% K/ J& Q: H) [  Upublic class ActionGroupDemo extends SwarmImpl {8 Q1 K8 t8 S, g: w% r3 B* ^1 P
        ScheduleImpl schedule;+ q" U0 Z& x5 A7 X5 g/ _$ H
        ActionGroupImpl actionGroup;
$ E+ _8 g: w7 o# @% Y8 n+ q# j        ListImpl list;
* W; N. e+ T+ J        char Id = 'a';
- k$ P0 G- W# V3 ]
0 Z: j8 z  E0 H; e  l3 D+ [        ActionGroupDemo(Zone aZone) {
8 [! I+ G; H$ q                super(aZone);4 S8 `8 w+ g# b* _
                list = new ListImpl(aZone);
! E7 x2 Z2 s# I4 g- V2 v                swarmSetp();2 b+ h7 m+ M6 p3 [
                actionGroup = new ActionGroupImpl(aZone);  [6 V4 q: s  c4 i. W% R) l
                schedule = new ScheduleImpl(aZone);1 j6 X3 k# Y/ \' R
                try {) K; X! [4 K: \+ u3 w( H: p7 K5 i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 I. y- d  Y* Y3 `+ T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% J. v* Z( z$ r0 l8 H* Z                        2 {$ Y8 Y/ l& q
                        actionGroup.createActionForEach$message(list, agentSel);4 G, v( x# y$ i7 [2 C
                        actionGroup.createActionTo$message(this, swarmSel);; x7 G& p+ f) f% X5 x, |+ a' M
                        schedule.at$createAction(0, actionGroup);
, P! e& n1 L+ E5 c0 h) ]                        schedule.at$createAction(1, actionGroup);
% L2 \+ x$ c# j3 a$ w' t                        schedule.at$createAction(2, actionGroup);: m. F5 j& W2 P3 p2 H- C+ q8 {

: d: ]' \2 ^  U  c# R4 ^5 l                } catch (Exception e) {+ ^  w, u' m# _6 G$ B
                        e.printStackTrace(System.err);- d5 w2 _" d' r0 F# V# G
                        //System.out.println(e);5 I% v, j1 j& \3 h5 L  ~* {, V- u
                        System.exit(1);5 B) C, Z( L1 }$ J+ ?
                }3 w, F+ @' l& ?) J

7 X7 y9 r6 M6 o: l. \+ T# K0 r1 j# k" g$ T" T3 C" w+ y
        }
1 F: ]- r; B0 X+ b- G8 K
. t  d/ u" n+ R        private void swarmSetp() {+ h9 T- m" w# S% R2 O
                list.addLast(new Agent(Id));
& N: P( X5 {6 V3 ]1 Y/ M& Q$ g                Id++;
$ Q% V5 @* H3 N3 X5 h0 s4 M; r        }
% n$ P# E7 L9 G0 s7 D; M1 p0 Y! p/ e& G1 O4 R/ L/ E. Q
        public Activity activateIn(Swarm context) {
& l1 R3 |9 c& u6 Q2 R5 I0 [                super.activateIn(context);& ?6 Y0 T8 T6 I* m
                schedule.activateIn(this);% a1 L) ^7 @1 p) S+ w% _8 I. P- R
                return getActivity();
2 H" c. ^8 J! ]% A/ f- t; ?        }
6 L2 Q) D9 o) [6 e7 f3 G) H
! |; t) B2 b- Y        public static void main(String[] args) {, f; k$ Y9 g. ]! c! ^# _& T9 \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) c7 e. T6 p2 C' O* R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& U6 I6 o1 b3 O2 }" m* \5 J9 @- |
                swarms.buildObjects();9 P; g9 X' d2 [. R- |% p
                swarms.buildActions();
! K- y( _5 u2 {( e  p                swarms.activateIn(null).run();$ s0 a  q9 B3 h6 [7 \
        }; \: B& A) r* N7 a

1 U5 E7 c- X" J9 H( Q. M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-13 21:26 , Processed in 0.012718 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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