设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8792|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J' a' i6 s; J( i4 V' B# k

, F4 F* e1 @! M  m" T: C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 N7 `% f7 j5 P/ h! e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' s7 T9 Z7 k" ?: r: ?2 ~
swarm.SignatureNotFoundException$ S; P/ }) I4 I  z
        at swarm.Selector.<init>(Selector.java:76), }& E) ^6 T! ^, w* T  F
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( J8 }% k7 A! q) W
        at ActionGroupDemo.main(ActionGroupDemo.java:67); E+ i+ j8 I+ {8 `

4 ]6 P0 j+ O$ `$ @6 H8 t$ ~" ~' A1 S/ L8 ~0 F$ w+ p+ I" R
import swarm.objectbase.SwarmImpl;5 U6 ~4 n: x& y( K% Q
import swarm.objectbase.Swarm;6 Y' Y5 p9 ?' @
import swarm.activity.ScheduleImpl;9 _/ t( e5 R& s; r' ]
import swarm.activity.Activity;* n" Z# _6 c" U8 U
import swarm.activity.ActionGroupImpl;) x6 I- I& V/ N# R$ I
import swarm.collections.ListImpl;! m& d3 n5 g+ E- r' }
import swarm.defobj.Zone;
- }0 K# [& A6 ?import swarm.Globals;
  b9 S3 E1 l6 W9 {import swarm.Selector;
. e& o. l) P* ^/ ~6 w' W: I; l# M3 aimport swarm.activity.ActionGroup; & ~! i& L4 R' u4 ~' `3 L% h1 q% |
class Agent {
0 I. n7 J# J& Z$ a1 E8 S        char id;
* M8 m2 X0 ~$ z
. B5 H2 Z! V) H8 Q. I( f        Agent(char id) {
- q! [4 b$ j0 e# F" K: @                this.id = id;
% Q8 I1 |7 v2 P        }$ g/ d. b) J: R) v* w
1 n1 d' I! L  G$ I. B" J
        public void agentStep() {
$ P# S& J" Z0 z! I; M                System.out.println(id + ":" + Globals.env.getCurrentTime());
( y' m& J+ }* H7 G' f        }
3 X& o0 E& }5 W7 N1 j5 b2 |}
% O8 d0 @" i# z4 ], S+ c  `
/ Q# a- o& o& Z. dpublic class ActionGroupDemo extends SwarmImpl {- W  D8 I& ]( I+ q4 t2 g: c
        ScheduleImpl schedule;
4 s2 o% `! I/ v# J        ActionGroupImpl actionGroup;# {- k8 L1 A+ j7 ^
        ListImpl list;
' L6 P. ^: _+ o4 k: p% L0 D6 T5 R        char Id = 'a';
0 a6 ?5 u2 a  J& k! Z* ~( a/ q
' h- u; ?8 i# u        ActionGroupDemo(Zone aZone) {- z8 ?4 n" K3 ?4 U2 z! j  U
                super(aZone);$ S+ j! ]$ m% D7 O# C4 m
                list = new ListImpl(aZone);
8 Y5 |) {3 k. K7 E) B% m2 u                swarmSetp();3 b( t% V3 i( l9 H4 d
                actionGroup = new ActionGroupImpl(aZone);
$ I4 m) J( {, I* M: h5 m9 M! H                schedule = new ScheduleImpl(aZone);! [9 a5 |& `3 G2 }# ~
                try {; M2 w0 T1 _8 B4 v/ E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; o2 Z* v2 M) e1 u4 |6 W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 e  t: ]  r# p$ H- k8 w                        
- n; z! U6 _2 w$ A1 H9 l                        actionGroup.createActionForEach$message(list, agentSel);9 Q* h7 }% @( P2 n* ^) r- w5 P
                        actionGroup.createActionTo$message(this, swarmSel);  X) {/ W/ p3 I* F( g
                        schedule.at$createAction(0, actionGroup);. F, T& ]: ^) h4 z2 T
                        schedule.at$createAction(1, actionGroup);
- W* r% X3 S3 O: k0 ?5 D, B                        schedule.at$createAction(2, actionGroup);
1 ?- d: p: t% u6 j" ~
  ?0 O" H1 r, v* `* V5 [' }+ }1 U                } catch (Exception e) {
: s* f3 t0 l) A# j4 ]* N$ q                        e.printStackTrace(System.err);
# `( x& D4 W0 m" s                        //System.out.println(e);& G; S5 `4 I) P! {; N) O
                        System.exit(1);$ y( c( {: W4 j9 n" K$ @
                }$ T" B2 P; a0 l4 f& c

3 N: }2 m9 d6 h* L  Z) o* I- R# r- c: q
        }# y0 C( J( t; _! J
+ `, g* S! T& K! _( I# y! \
        private void swarmSetp() {
* W0 h; |/ Z- v. x                list.addLast(new Agent(Id));/ s, {) n5 x9 f" K
                Id++;' W* H/ g3 P: v( W" A- f$ N; F
        }; |+ p) [- W9 w' X3 w4 _" d" j% n
4 P1 O1 q' k# z  S
        public Activity activateIn(Swarm context) {
6 |* [) K* }- {! `+ C2 L                super.activateIn(context);/ X, L/ Q6 Y; h. W+ _
                schedule.activateIn(this);5 q1 M: ~( @# ~/ }( c- F
                return getActivity();+ N1 T/ e1 Y2 I- [& p
        }9 o7 ~2 c8 A7 u2 _* L5 i

$ _2 X( N( l/ s1 [3 e        public static void main(String[] args) {: l+ k; k5 G' Y; k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 d6 E1 _1 k! i. l5 Y7 u* K
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ A6 Y+ L9 X+ q, u6 `
                swarms.buildObjects();
+ q4 d6 B, u/ g2 D0 q0 Z% `  b                swarms.buildActions();
8 \6 u5 a+ V5 r) y& a6 z( y                swarms.activateIn(null).run();
3 R: ^$ O6 x! P9 l7 L        }
( o6 r0 w) P1 z; Y+ x0 I6 T- ^/ u0 o1 f% i% G. C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 01:49 , Processed in 0.018474 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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