设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8778|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: s, k7 G0 y. r! A
: C6 x9 b# k: ]$ \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, p9 A8 |% q2 j' `9 P& H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 B; C1 p" h4 g/ S, v
swarm.SignatureNotFoundException' o; g7 w$ a2 e* T
        at swarm.Selector.<init>(Selector.java:76), h- u) U/ ^) z# e: o/ W
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ _, x& f) D; x) t8 x2 q1 I: X        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 p( z; M4 i  U& ]* `9 {, R# t* ]3 Z# M2 ^1 M- q/ x) y; w4 s  F- a' s

2 Z6 @8 `+ z# W  s2 Z5 Bimport swarm.objectbase.SwarmImpl;
2 D; h* c9 |# }import swarm.objectbase.Swarm;; J3 V7 U/ j6 i3 |
import swarm.activity.ScheduleImpl;
4 N! B! E. U8 W' Zimport swarm.activity.Activity;. H9 h$ v1 f8 R
import swarm.activity.ActionGroupImpl;! l% _7 e" G' H* m) ?6 D. V
import swarm.collections.ListImpl;* U& T* h% o: o' p( n8 h
import swarm.defobj.Zone;
$ |$ W6 d, o0 z/ _import swarm.Globals;
+ i! B' r  D3 H' P9 uimport swarm.Selector;
) `! g# X/ T/ {9 I1 V  t5 }import swarm.activity.ActionGroup;
! B6 H7 w7 ?5 a) W+ j- }2 U' b  nclass Agent {1 E+ q0 ~# J1 z" N: u
        char id;  Y: A0 ~3 r" V# i

" h% ]( p8 d' t: M2 y, _        Agent(char id) {
# |8 Z- M7 F  a7 t                this.id = id;
6 N: M0 h. y2 o& v3 F7 z2 x$ J+ e        }  ^: R2 ?9 o  L8 D4 n& Q! C2 k

  q* @8 K  a8 N- n8 E& u        public void agentStep() {& h% z3 a; T8 m! \* a  O4 h% \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* b* i- z* O0 N        }
2 P* `) u6 Z+ c/ W- |% h}8 a1 a5 [. G9 [2 Z5 @" c  y

0 |1 k! `( m) \public class ActionGroupDemo extends SwarmImpl {9 F6 i0 s7 _" x& T2 v% U6 D- d' C
        ScheduleImpl schedule;! ]( K4 K0 Z9 ^+ S* L1 j5 i
        ActionGroupImpl actionGroup;! i  L$ i$ x+ ?; B; O
        ListImpl list;
# y# p+ _' i; H        char Id = 'a';" C; t, n* {4 Z
& N$ o) `+ T$ l1 Z4 ~
        ActionGroupDemo(Zone aZone) {- P/ v. j$ Q; b/ `  Z% h! V
                super(aZone);
  ?$ @/ o& z- [- B                list = new ListImpl(aZone);& n9 ?& J4 Y4 h$ Y; G+ u6 Z
                swarmSetp();
' p. M- m; V% [$ \+ m                actionGroup = new ActionGroupImpl(aZone);
4 H8 n1 S1 x1 ]. d, D2 B                schedule = new ScheduleImpl(aZone);% Z1 [; i4 R; @  @
                try {
9 ]" ]" {& O% K' Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' c+ j$ I' }: e. w" O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( ]; i: A" d; r" Y2 ?) j5 y                        
/ R6 ~. E2 W! u7 F                        actionGroup.createActionForEach$message(list, agentSel);
! L/ L1 w1 m; d* i2 E( W                        actionGroup.createActionTo$message(this, swarmSel);( \' K  H7 z9 t% b1 \1 M
                        schedule.at$createAction(0, actionGroup);) J& k0 W) r; \, P  }
                        schedule.at$createAction(1, actionGroup);
0 e! p, w! g9 k9 }+ h* v$ z                        schedule.at$createAction(2, actionGroup);
  p. [, t6 Y  ]% T. g2 S" V% c9 g; N
& Z: E+ f8 o3 N8 d7 f4 n                } catch (Exception e) {7 T5 g9 b# [( h0 j8 c3 V" \3 y) J
                        e.printStackTrace(System.err);
$ F3 s; ~4 }" h7 E8 P; P                        //System.out.println(e);
9 Y' o$ F% P8 P; c$ a8 I                        System.exit(1);
7 ~; e( ]! S# L0 Z1 M                }8 C% y$ E( R  [9 d0 i6 r
8 u( F* W$ ~" T& U. q
5 Z5 M% z% w  l/ \$ z
        }
: d2 T2 A  N- _+ k1 m1 u& S9 J$ K) P# |8 E3 ]$ B5 q' C% K; ]- U/ H* B
        private void swarmSetp() {- j/ O' z1 s0 R( l. H1 U4 [
                list.addLast(new Agent(Id));* \2 e. p3 P* s
                Id++;8 ~) y2 f! |0 p. V
        }: z% b: b* g+ r
* i; Z$ s3 [/ K5 g
        public Activity activateIn(Swarm context) {9 x0 `# H4 D& c+ C5 R# [& z1 L, g2 i- a3 Y
                super.activateIn(context);
1 ^( u3 v( L: g; Z( s" V7 c& I% h                schedule.activateIn(this);
5 J5 d$ v+ o, K                return getActivity();6 o5 A3 O, d2 u& K5 p
        }
: s" u0 _; v/ r& d6 ?% I
" L, u& b$ ]7 x+ @; f& m        public static void main(String[] args) {
3 u2 \6 B+ `  U+ K- }- i8 E) W6 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 o2 E; y, N# R# q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 c' N, C( Z) i$ i+ J                swarms.buildObjects();
% s, ~% T  ?  M8 n" l; `                swarms.buildActions();+ E- O5 M) J0 ]- U* ^- Q! ]
                swarms.activateIn(null).run();) u: B! [& w% I* p: o3 }, t3 H
        }
# X" A% B" \% i; o
# F6 q+ \' y4 Z6 c4 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-22 13:42 , Processed in 0.014181 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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