设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10576|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # f% A0 h3 x2 {7 c/ G

9 A4 |, n* J. k$ P7 y0 n0 `6 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: B. d: d/ w2 i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 I# O) b  k  G, {% q
swarm.SignatureNotFoundException
( v& I  \+ u% i# ^% G6 C        at swarm.Selector.<init>(Selector.java:76)
; j3 R* d( i/ O2 y. Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 B  O+ |; H, u$ U0 W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: t* s: V3 `" z2 B
! p  k" D' X; q- M% N9 B, s5 l, Z: \% N' K3 U9 b1 D# P5 M; n, T
import swarm.objectbase.SwarmImpl;
  F4 S0 j% J& U0 Qimport swarm.objectbase.Swarm;
$ u4 S2 N) R) G' x* x& }import swarm.activity.ScheduleImpl;
( [& y: k; Z) B$ t+ L9 [import swarm.activity.Activity;4 k5 w1 D( z; A1 ^0 G+ d" K4 A* O
import swarm.activity.ActionGroupImpl;. L6 Y. z/ U. S; `/ H' m% V3 b
import swarm.collections.ListImpl;, i7 x7 m8 H6 {; _! M1 b1 D0 K
import swarm.defobj.Zone; 7 ^( a, F6 w' J$ t
import swarm.Globals;4 f5 B+ K) z$ s8 n" `( l
import swarm.Selector;$ g7 C, j* Z# w# n
import swarm.activity.ActionGroup; 1 M% i( w2 ]$ `' {
class Agent {* D8 t: n& B) k; e! f, ~7 p  e
        char id;
4 y3 j9 l* L5 `) m
6 h3 x4 |. b8 N* |/ H        Agent(char id) {5 g# x! X2 x* q6 h
                this.id = id;6 N6 q* r4 {: g! |) g* D
        }6 o3 ]" g, W+ K6 K7 ^; H% I  [
5 c- s0 m$ K7 i& m; ?
        public void agentStep() {+ ]) r0 L/ J* I/ c
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. i: W* W( E! a        }
, x5 n6 @) k9 r  [& X, a- V}
" @1 h2 t- a8 J$ A( u8 w" ~2 S  d% d
public class ActionGroupDemo extends SwarmImpl {
. I* Q6 e' x# E; @" A" d+ ?        ScheduleImpl schedule;4 V8 z1 C1 J% W1 B8 u) X' e
        ActionGroupImpl actionGroup;
9 E) p& V; g& W3 R% z3 u3 S        ListImpl list;
5 W: Y0 o- Y1 A; |/ u1 J+ K        char Id = 'a';# l. o' ]: x; ?9 r( Q
! [, O! o. D# t5 a) F
        ActionGroupDemo(Zone aZone) {* ~1 _/ u# y+ n5 D7 |8 G  b! w! ^
                super(aZone);
& @8 h) u" S" w- w4 q1 T; w3 E! ]                list = new ListImpl(aZone);1 L! l# s; l7 b; K5 ~+ m! X' ?3 W
                swarmSetp();
. l* t3 n8 T& A, M* k- [                actionGroup = new ActionGroupImpl(aZone);+ Y. k9 S! T: g: e  T1 Z
                schedule = new ScheduleImpl(aZone);1 x' ^. R7 x+ _4 v' e9 Q0 U, Q
                try {
) ^' g. R# C' X  \+ \% E( ~8 L  {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! C, V* F8 f1 P0 K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) _! L6 p' t) |7 s                        
- [  U4 v5 E- e  B/ D3 a                        actionGroup.createActionForEach$message(list, agentSel);
+ h8 D! w) B. }3 u1 D  l$ V                        actionGroup.createActionTo$message(this, swarmSel);0 v. M& z. k: S7 l0 p( K0 v% t( }' B
                        schedule.at$createAction(0, actionGroup);
" a* {/ C- h* h# T3 Z& ]                        schedule.at$createAction(1, actionGroup);
+ g: m' F# D% d                        schedule.at$createAction(2, actionGroup);
- ?3 h# M) d0 \2 Q, x, Z. X5 t% C. @( @4 V1 g
                } catch (Exception e) {
& @5 I" }5 E( V6 F) N5 E                        e.printStackTrace(System.err);
& A! K7 u0 y" V8 J, m$ E4 G2 x                        //System.out.println(e);
/ K$ W9 |& ~. y                        System.exit(1);
9 u8 L5 l" _! }                }
! l# e9 X. B. j& w, ?% r; R1 ], E0 c, I9 L- E% @# ?& F

5 K/ A; |% L1 f  z2 w5 P" D- y        }! R" F7 I$ _$ k' ?5 D- s

% O2 Q; m3 A7 B  a& B! v        private void swarmSetp() {* K# x- ]3 ]  c( U. d
                list.addLast(new Agent(Id));. l( m. H9 Z% D0 g
                Id++;* k0 A, g0 x% F8 Z5 Y5 ^" V/ Q
        }
- ]6 m# J) \! M2 A( H* ?0 \. f, O$ _
' p! w8 O% s# a8 c        public Activity activateIn(Swarm context) {8 N, O  n4 A; U9 S
                super.activateIn(context);
& g" b# ~5 T2 x0 N9 D                schedule.activateIn(this);
" C7 W/ q6 D# S  H8 o, T9 _                return getActivity();) @4 D+ j6 l0 D) e- L
        }
% D: E/ [& H" ?2 \% S, M1 U8 _2 n0 o: F% k/ H
        public static void main(String[] args) {' c& ]# q0 v! i" Q4 b& c' ]6 I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) f& w7 M9 G- d* r* d( d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 V9 c- B8 h5 N. [
                swarms.buildObjects();& }3 B1 P2 e6 }% X
                swarms.buildActions();
  i. V) ~, e1 i. p% @                swarms.activateIn(null).run();; h; V" q: ^$ `9 z# E/ H  a8 z3 A
        }8 k2 d6 y6 _9 m, }0 t' ~* f

9 s- z, W9 h/ ~- \/ m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 17:03 , Processed in 0.013854 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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