设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13232|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / [' J- i7 M$ h* I0 N4 ~/ ]
( ~/ W" y& V: |& g9 v9 O! A( {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: d7 P: b: y4 V- W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! z: g$ o' M# O8 q1 c
swarm.SignatureNotFoundException
: j% l5 J0 ~2 H        at swarm.Selector.<init>(Selector.java:76)0 l" Z; g6 k; O+ ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! i7 R1 p2 g9 S, {8 [) r0 D        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 c& W3 M/ L5 d' ?  z
2 S. l7 Z* S; q# B% @. }8 g3 E) i$ o( O8 s" J
import swarm.objectbase.SwarmImpl;0 T* U4 j: M% n
import swarm.objectbase.Swarm;
/ N1 N! t5 z# _: Rimport swarm.activity.ScheduleImpl;
8 Z8 G/ m8 ^& g* s% O/ ]: ]import swarm.activity.Activity;, |( {* h; H' E% r7 I
import swarm.activity.ActionGroupImpl;; k; T9 L, {3 o. p" l* ]
import swarm.collections.ListImpl;) _6 q6 k  Q' N7 c/ E) S
import swarm.defobj.Zone;
6 N- E! u$ Z) p: ~3 jimport swarm.Globals;1 W& }: M; }) t9 N7 B5 t: S( y
import swarm.Selector;7 ^* A9 @1 C$ p4 O3 x0 h4 j
import swarm.activity.ActionGroup; 0 e2 L6 l$ j8 O1 K
class Agent {9 ], K. `. f7 z# ?  x* k7 d
        char id;
$ J4 B/ e5 q) h) q: ?& o# i# ?( l0 `3 P
        Agent(char id) {
. c! p2 v1 M- W                this.id = id;/ ~9 K7 p9 c0 }7 ?
        }
3 E- {' m  ~+ Z9 X! D$ M" a5 N, m
4 }" {0 e; c( i2 m! d$ K& h# U        public void agentStep() {& G/ r2 v+ c, H& l# J: M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. o6 s. ^3 Y9 O1 l        }
1 ]8 p& o3 Y/ z$ G9 Q9 L}0 B! x2 c" N8 }
9 {$ ~0 B1 d+ n8 D/ h, ]4 W5 G
public class ActionGroupDemo extends SwarmImpl {
4 N3 b) R* ?! b$ e) {3 S' ~        ScheduleImpl schedule;
5 S/ T" a% W: B  y3 `. J; P: A3 e        ActionGroupImpl actionGroup;
% }0 _0 S% b+ r" V        ListImpl list;; K# Q! x8 L1 C
        char Id = 'a';
0 Z  l2 M. l4 b
% p' j! `" ~  Y5 y3 I1 o        ActionGroupDemo(Zone aZone) {
6 e9 H2 R" E2 o' b                super(aZone);4 ~' a! |, y- J" o
                list = new ListImpl(aZone);
8 y" o# n) I0 Y                swarmSetp();7 \' k# J  o: |# I( Y- E8 u+ c% O
                actionGroup = new ActionGroupImpl(aZone);  b) |& V! v$ r! D
                schedule = new ScheduleImpl(aZone);
0 {+ A8 \% H- E+ A3 ]) R0 P                try {, K: D  _; v0 b( }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 u- ^% g1 ^* Q& l9 y  n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# @7 ]9 ^/ a* k
                        
7 w5 K7 k9 t. K- ]; c                        actionGroup.createActionForEach$message(list, agentSel);
+ @+ G9 U7 y& w6 p7 D; j$ u' J$ i( W                        actionGroup.createActionTo$message(this, swarmSel);6 d3 c: k* g' {0 ]0 w) V
                        schedule.at$createAction(0, actionGroup);) U( [+ c5 }4 K
                        schedule.at$createAction(1, actionGroup);
0 Y* S# P+ O5 _8 }6 h                        schedule.at$createAction(2, actionGroup);. |+ i0 Q) z! O  \6 y2 w" b
+ M$ I6 I2 i" M; _1 {, @2 ~% `
                } catch (Exception e) {
6 ^. w6 E# e- q1 m                        e.printStackTrace(System.err);
2 P# [) Y4 t- x6 X( k3 c+ U                        //System.out.println(e);
0 q6 E! u/ O4 |$ L1 R                        System.exit(1);. b6 M0 n- S, J8 K5 w/ g1 j2 p
                }
0 o/ r! u% r4 y0 h
# _( A* y/ j" a9 }1 o' e) h9 c3 W9 T; t2 b: l' H" ?
        }: D" f. `3 E2 C- N
! |$ q3 o4 k# ]2 h
        private void swarmSetp() {
: w" o4 F" ?1 x9 M                list.addLast(new Agent(Id));: F' c0 a0 q+ A$ q, q8 X
                Id++;% l  j0 a8 j2 ^# a% ]7 [! P
        }
3 W5 X7 E, {8 j3 \- v
$ O5 P- b6 m5 Z        public Activity activateIn(Swarm context) {
8 O2 ^3 m+ j1 q* a5 G* j                super.activateIn(context);5 M9 [# x0 H2 H+ V! g
                schedule.activateIn(this);
/ f2 Q# d4 c& ^3 U2 T  r                return getActivity();7 s) ?4 W" o* O' I1 x
        }6 t* `, v% \: W& s" A9 K" S
; |) G4 C' L! `$ l
        public static void main(String[] args) {. u& D; m2 p6 A9 l0 W6 Z9 `7 P: k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" B& }- c! K5 J6 C' k9 U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 _1 U# u" _* ~8 a% P                swarms.buildObjects();' e/ s( ]" L7 z+ v* N
                swarms.buildActions();
+ H/ u- z- A- n9 d; e                swarms.activateIn(null).run();
. w% q7 n" S2 V0 T        }
& \$ g3 P% U* z1 x% y# D" j+ O1 q- T, g2 p8 S7 c3 g' C! {; J  R
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 08:26 , Processed in 0.017282 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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