设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7778|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 |' M: ~$ i' b2 D+ s' ?- \$ R$ d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- F7 a& d! M) A7 g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ p8 w2 ]: c. ]& a
swarm.SignatureNotFoundException
1 }; n& `  n( B3 J' f# i! Q        at swarm.Selector.<init>(Selector.java:76)# @: i0 j- ~- ^$ l  K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 e% I& G9 `& @7 d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 n% p& v9 Y/ R7 F# h

2 |/ {& L3 P& v% N8 B
7 V' i9 J3 r% y  H  l' Simport swarm.objectbase.SwarmImpl;
& {7 D( A8 j4 Fimport swarm.objectbase.Swarm;( G' N3 i5 S$ Q% O0 F, G
import swarm.activity.ScheduleImpl;
) s! ]3 L# ?8 }import swarm.activity.Activity;5 z- t$ x4 ?  b/ {! Z
import swarm.activity.ActionGroupImpl;
/ }! b5 q8 f  {% Z# Oimport swarm.collections.ListImpl;% E% K% l; c+ C% a. }7 d; O7 c
import swarm.defobj.Zone;   I; J  j5 M+ t( f- l9 V" k
import swarm.Globals;+ z8 M+ a8 {- P
import swarm.Selector;
9 g1 D# |; l/ r2 s; \( Wimport swarm.activity.ActionGroup;
6 y& E9 m* k9 mclass Agent {1 d: Q. p- @0 S
        char id;) t8 D* E# A5 u! i' d1 Y
/ v; L2 m6 p$ u
        Agent(char id) {  t; v+ W8 c( @3 K
                this.id = id;* G5 B4 Q) t' [
        }7 _4 |( |) i) P  T9 n' H

( H0 d. s% O7 Z1 x; `, u/ N: ~        public void agentStep() {+ G/ ]( \0 V. E; X
                System.out.println(id + ":" + Globals.env.getCurrentTime());# G, H  J9 a/ ]  ~# _4 T
        }1 V0 x+ Z& j1 i0 Y# B/ j1 I
}
  e( L" @6 H9 _
2 @  D" \! r) S1 ?4 bpublic class ActionGroupDemo extends SwarmImpl {
% Z- K/ B; d# ^" Q        ScheduleImpl schedule;
' c0 d4 i1 k5 l        ActionGroupImpl actionGroup;1 f# e7 |; u8 G: C6 C
        ListImpl list;
! E: F2 Q& P2 ~" s+ |) X2 M; S        char Id = 'a';
& q, Y! @* H. z
0 T8 H4 J) [4 w# V) u        ActionGroupDemo(Zone aZone) {
4 I' I, g+ x& o: Z. M% |/ t6 D6 S                super(aZone);
; \' P3 D' }% X  ~" n3 Q                list = new ListImpl(aZone);
9 ]  x3 p7 m5 L" A6 c                swarmSetp();
2 M" W# J) Z& }& a$ \$ g                actionGroup = new ActionGroupImpl(aZone);
& g7 [+ [; O2 f! W. K                schedule = new ScheduleImpl(aZone);6 V2 Y2 u* V4 V
                try {
$ E; |+ b' w% h& f- Q5 @                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( z1 o) T$ a$ C+ T) g$ O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 {3 h1 s+ I& t% _, |, [! ^/ i
                        
/ R. C1 J7 W: ~6 {5 A  f                        actionGroup.createActionForEach$message(list, agentSel);
$ q8 i# r# c' {0 P                        actionGroup.createActionTo$message(this, swarmSel);
3 w, e1 l9 N* u9 H7 f$ _, c                        schedule.at$createAction(0, actionGroup);  k9 \* Z5 Z6 N* i
                        schedule.at$createAction(1, actionGroup);7 C! O8 p( [, G! |
                        schedule.at$createAction(2, actionGroup);& |  u3 h$ F! |$ Y# w+ _; c
/ `" O! N) \- I0 u! y" K7 `* j0 Y9 X
                } catch (Exception e) {7 y2 L; g6 T9 w& @7 n8 }
                        e.printStackTrace(System.err);
* z3 `4 e: z4 y$ u                        //System.out.println(e);, u& z; v6 Y2 N) b$ m
                        System.exit(1);
" B9 k3 B, d. r7 _! Z6 [+ @1 k, W+ Y                }
! z0 k* C8 c4 K$ L" M: o5 E
/ ]. K' B/ k8 X% r: A+ s% ~- }& v" m
        }
0 A6 ?! I; P7 a! u$ y- z$ L& T& i& C6 N# e% t: R
        private void swarmSetp() {& Q6 b8 V- L5 o# t& u- ~
                list.addLast(new Agent(Id));9 a. [* j. o/ S0 E" K
                Id++;
5 R- z# p/ |3 R5 W7 S5 H- r        }! O7 O: ?/ W8 p; b! M
; F% \" c4 d6 g; v. m" H7 l1 a8 ^
        public Activity activateIn(Swarm context) {" V9 A% `( n: a9 \6 U  J* i
                super.activateIn(context);
3 O( ~. I2 G  g3 }* P                schedule.activateIn(this);6 E4 l/ }. }1 P, x8 d# c5 Z
                return getActivity();
" q% P  H) @$ C0 {( t        }$ v  `4 o0 f* W6 I8 ]

& o( W3 V, e! ^5 a+ i$ M+ b        public static void main(String[] args) {
; A! i6 _; y( Y5 ?8 r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 a3 W: K, a% A" v- q8 f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 U! a" _* {$ E6 ]# Q5 l8 D9 N                swarms.buildObjects();6 z- @' J7 i. x
                swarms.buildActions();7 u# {; T. K( ]/ i
                swarms.activateIn(null).run();- E6 {9 ?! G: w* k$ V# O2 q
        }
7 D# f) R2 Z6 Z2 t& z  }+ K
% X- P5 c# Z6 `}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-14 10:21 , Processed in 0.014613 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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