设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7138|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 o6 j7 k% B) q. _/ R" D) u5 b, B" w" \1 {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. ]( a$ {) V. a3 X. D( p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." ~- }  X- a# b
swarm.SignatureNotFoundException
! _& I6 b0 ]+ T        at swarm.Selector.<init>(Selector.java:76)
$ l4 S: S8 Q5 E' W, I        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& O( r7 ?% U! }1 ]# c8 |# L        at ActionGroupDemo.main(ActionGroupDemo.java:67)" t3 D3 C& U) X4 t  A5 n

$ g. S+ I( v" l7 F" L* v0 J* W7 T+ n8 C- B+ p# N8 r7 m
import swarm.objectbase.SwarmImpl;
: m8 A: u# |7 r7 g' pimport swarm.objectbase.Swarm;+ e: [1 y1 X7 h0 t# L. U. h
import swarm.activity.ScheduleImpl;
5 s. B- `% D, v% rimport swarm.activity.Activity;) [' K0 q/ }/ p
import swarm.activity.ActionGroupImpl;
2 d: [+ k9 A4 y+ @% Himport swarm.collections.ListImpl;( o, m6 T: {' k& x% f* X
import swarm.defobj.Zone; ' _9 A: K7 j2 h
import swarm.Globals;
; }0 |: d5 a- ]1 I5 Simport swarm.Selector;
5 X4 Q1 S) e' \  ]+ Uimport swarm.activity.ActionGroup; - j$ a1 i. h- ^  W6 P
class Agent {* Y# v7 l0 v8 i2 O+ {
        char id;& j4 |% T$ J1 h3 d# _

4 s8 [9 ]( {4 ^* r7 I% e        Agent(char id) {: o- N3 |" p) E7 R
                this.id = id;
: }# p9 V( W, N* p- W3 `+ V        }. g' E- S" }5 h3 w4 Z

& e& j5 c. Q8 H! ?- K( Q        public void agentStep() {
" D6 S9 M* R$ F                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 |2 A8 k; ^, d) F: s        }
6 R+ w$ T2 r# E( C. V0 ]}! M+ u- B$ a+ c0 w$ N2 R
; h# x1 q6 V2 j) c# z5 f0 Y& ?
public class ActionGroupDemo extends SwarmImpl {
) X7 w# y/ ?( T& j: A        ScheduleImpl schedule;, ^6 F! A3 x0 Z/ M
        ActionGroupImpl actionGroup;
* N4 ^7 i! e5 G2 x& J/ ^9 ?; X        ListImpl list;
2 V- j) O$ f* R& Z8 j, J        char Id = 'a';
0 k4 |( `# W# x, K) q( L6 J; F) X
        ActionGroupDemo(Zone aZone) {& G0 J* g0 t" G; H
                super(aZone);
; {" G  g7 C+ |5 ?2 z4 I7 O) Z8 ]9 k                list = new ListImpl(aZone);
. [% K6 w( z7 Z, n6 w                swarmSetp();6 t7 N" l1 Z6 j* d( n* f2 b+ G
                actionGroup = new ActionGroupImpl(aZone);7 }  N5 O  G+ h* F
                schedule = new ScheduleImpl(aZone);/ ^) h; n3 B# t7 @9 ]1 j
                try {
+ a3 W6 O9 `$ `% M0 Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 c( U8 @; y3 d, r, x; z+ P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 c# L' V# E9 Q' }; p$ Y. p+ D9 p
                        ! U8 O2 B$ i# s& ~, v
                        actionGroup.createActionForEach$message(list, agentSel);0 ^& U' f; \0 Z) t% o& B
                        actionGroup.createActionTo$message(this, swarmSel);
, e9 z+ K  \* U4 b3 D                        schedule.at$createAction(0, actionGroup);
0 K5 l/ [6 U5 P4 p* t2 G                        schedule.at$createAction(1, actionGroup);2 _& }' N- N0 L* M- t: v( w
                        schedule.at$createAction(2, actionGroup);* s2 a. {( d) \) s0 v* Q& A3 z

2 O' i/ i5 |+ R                } catch (Exception e) {
5 z2 `6 v; p* Q5 j; o                        e.printStackTrace(System.err);
% _& ^) N( c2 _                        //System.out.println(e);
/ }+ R# k3 P' u9 j                        System.exit(1);
- [6 D2 [5 ]: o                }
7 {% z# R) M- x9 ^* t" d; V
; ]$ P' R& @* t; H- p) u# d0 J- v$ c; b% N6 k& W
        }6 U4 N) j4 R/ R2 A4 \

8 l3 T/ E4 U9 q3 `        private void swarmSetp() {
4 V6 E8 Y/ ^0 E  F                list.addLast(new Agent(Id));
3 R& r% q! d6 d6 C                Id++;; e! P) V% L; a  E
        }1 ^2 D0 U% P- s

# }) O0 C3 d; F/ B* W' B        public Activity activateIn(Swarm context) {0 w! u2 L4 P( ?* U* h3 P9 ]2 |' t
                super.activateIn(context);1 L4 W$ `3 Q, A- ~# L/ l
                schedule.activateIn(this);
3 H: n! J6 O8 `2 d                return getActivity();8 `" ?' c! W, h% ~2 G
        }' m/ Y* K! S5 P

, r4 m4 v! F  `+ x" I! B        public static void main(String[] args) {
9 N# b2 a9 w' V( n' v                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  Q* `  H; f$ R  |. b                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( }' `# M+ o& U) V/ r* H                swarms.buildObjects();
& t# p1 I8 Q, r' s1 u                swarms.buildActions();
: S4 E" q* {/ E- \: Y                swarms.activateIn(null).run();
! z% k: r: v/ [. ]4 D        }5 r, |* i5 n3 a6 }/ S8 Z

8 q# }* x# t; ^! U6 g. D0 `}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 15:58 , Processed in 0.017517 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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