设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9362|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' `6 D# n- N! z! v! L

% g! C* ?. u0 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! w( C8 W0 d4 S8 k" C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 U$ `% p- `$ o! a8 ^
swarm.SignatureNotFoundException, p9 s2 U0 F0 m+ C: z# M/ J1 x
        at swarm.Selector.<init>(Selector.java:76)( H/ T" @0 J$ W
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 J3 X" \8 N/ L0 V        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ `. U; W( g) T& i( r
; u* \) F3 e; x% \7 l' _0 C5 M+ |$ ~1 J2 q
import swarm.objectbase.SwarmImpl;+ h" |  C, n) G9 _$ u# o+ w
import swarm.objectbase.Swarm;
& M* @) ]% f4 e" w6 Yimport swarm.activity.ScheduleImpl;
' P6 J! \0 |: u  dimport swarm.activity.Activity;
# o9 i- O% S! [5 N/ Uimport swarm.activity.ActionGroupImpl;4 z& D# o. A+ n. E7 q
import swarm.collections.ListImpl;7 }: w- D# n1 I2 e2 \; J& X9 T. l
import swarm.defobj.Zone; ; ^3 d* P& U; e
import swarm.Globals;# ~7 e; B- n# w1 a% q- I! l
import swarm.Selector;
' L" S5 t, {* C) n2 w0 @: [2 W% ]import swarm.activity.ActionGroup;
# n# ~, f( Z8 ]8 M. i) |* pclass Agent {
2 ?7 y0 l: s6 M; a9 k- U+ s        char id;
% S) U# J9 s: Y9 w6 S+ R
2 S  u+ x$ |1 w/ i0 d& c        Agent(char id) {, @7 |- d5 b/ L/ f
                this.id = id;
/ g2 g6 |( S0 s& I  O% v: [, F        }% E( u) ~' w* K" y
- D. r0 J7 u' b8 B  @' w
        public void agentStep() {
4 p7 O4 ^, h: c! Z9 j                System.out.println(id + ":" + Globals.env.getCurrentTime());, `$ \- r/ i4 Z& |6 X. v& P
        }
7 c3 M( K. ?0 n( B}
- N8 w! }5 L% L! K+ d. m( V. `# w& y/ X$ j
public class ActionGroupDemo extends SwarmImpl {
% r( }1 b, C" @, L        ScheduleImpl schedule;
* U% c, ~5 ~, e1 V7 J& y        ActionGroupImpl actionGroup;9 ^- s1 W2 n! D7 r- @" i! [
        ListImpl list;
3 F: v# {0 d  I$ C8 E. g) x        char Id = 'a';
" |/ C+ k( I/ c& }) b
7 \7 U; _  @7 L/ i# U+ w        ActionGroupDemo(Zone aZone) {/ R5 U4 H1 W4 |% x
                super(aZone);  @% V2 \3 J3 f7 `: K% z8 O
                list = new ListImpl(aZone);
3 n% e' C5 n' f9 I& V) _                swarmSetp();& S5 `4 Z, h  {* \1 h9 l2 [
                actionGroup = new ActionGroupImpl(aZone);' ^8 ~1 ]2 Y& M& u+ U7 D! u
                schedule = new ScheduleImpl(aZone);
1 _% t; v  g  O: H3 S3 k& @+ V                try {; z4 w, i! r# S9 g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ w0 D7 _. b$ Z. [
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ n+ Y0 T4 d: N9 Q* y  j4 N
                        1 h( F2 F9 A0 l1 k& j/ f- e
                        actionGroup.createActionForEach$message(list, agentSel);" F. @+ H/ q1 i1 _2 L1 d9 l6 }3 L
                        actionGroup.createActionTo$message(this, swarmSel);% Z1 W' g6 N( m' o
                        schedule.at$createAction(0, actionGroup);
& s4 `  Z& f8 O) q                        schedule.at$createAction(1, actionGroup);$ ?. B* [5 s4 h9 x+ B1 n  @
                        schedule.at$createAction(2, actionGroup);
6 f- q: L! x5 ]* |; L& f+ S* Q2 a4 s, G# R
                } catch (Exception e) {
+ Y, u. z4 g; h7 \$ t' C1 f                        e.printStackTrace(System.err);
; Q3 K6 w& q4 Q8 S3 Q0 ?. f9 j                        //System.out.println(e);
& f; M7 B/ }' e4 v" P                        System.exit(1);
/ N* m6 F$ G1 g+ K2 K3 J* x                }; y& Y: b) U3 c- N) |: t* Y8 r" p' B
" m+ m/ E+ G# K1 j
, r: V6 E2 ^# Q0 P) |, S
        }
0 m, B0 c  ]0 }3 }4 A$ @4 ?# H+ v/ X
        private void swarmSetp() {
/ ~: g* J( y7 Z1 |5 x7 W3 M                list.addLast(new Agent(Id));
3 f: c% t3 r2 K& g                Id++;2 g4 U5 v0 T( v
        }- J  q& `/ T9 L- `

# `6 Z0 _6 b, h2 ?- F8 r/ _        public Activity activateIn(Swarm context) {
- E! u- P7 c' c/ W& n                super.activateIn(context);9 Z2 ?# |$ ]( x
                schedule.activateIn(this);
% P( m1 H; Q( j                return getActivity();( K  [( y1 [# X, k! g! t
        }
" G5 A4 n) L, B" a( N# B, f( B/ U& m
        public static void main(String[] args) {
) ]8 {( }8 E( o; s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( q) ^6 ~; p4 d& `9 C( T5 O5 U. u
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 k% `/ {# h$ `4 l3 \; n5 J# h
                swarms.buildObjects();
% _5 _9 c! Y% K1 A; _                swarms.buildActions();
0 S8 Q2 L1 s% V6 T5 x                swarms.activateIn(null).run();
8 v2 W# c! n- T# Q; v        }
8 t& g( z2 Y  I) i% z  E- w0 o9 h
. J* k7 G# z1 Q6 j# ]% W+ N9 M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-10 00:11 , Processed in 0.015437 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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