设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13336|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( P( g( X' X. G8 Z( |

: `; N* Y* y! v* }$ ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  z( P" \) r" X7 Z* C/ S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 p/ W8 X% V! ^8 L4 S9 D) d
swarm.SignatureNotFoundException) _+ {" _' K5 A# }( J3 _/ R; Q$ z9 m
        at swarm.Selector.<init>(Selector.java:76)1 n9 B; F( h* f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) y) f# r, c  y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' u- C' C: Y9 t% ]
# v" ?8 X" Z! X! b% }2 k5 l7 P" ~* C" i5 U5 H, Z2 }; }
import swarm.objectbase.SwarmImpl;
  I; q/ q5 Q. A, z* p/ Dimport swarm.objectbase.Swarm;
! J) o' j% l# v, ^# `% c. p7 wimport swarm.activity.ScheduleImpl;; x8 ^2 ?( u* x$ E4 _
import swarm.activity.Activity;
0 J' v" t7 j$ Eimport swarm.activity.ActionGroupImpl;, W4 e, t" ]1 Z# H" [
import swarm.collections.ListImpl;; f% }6 y2 n& A. n
import swarm.defobj.Zone;
, a( j) Q6 N  a. rimport swarm.Globals;1 G7 L) F* v, ]; ^7 C
import swarm.Selector;
0 q1 @3 }  \3 W/ h' E9 g5 Limport swarm.activity.ActionGroup;
% m+ G; E$ {7 a! X4 C3 qclass Agent {
0 H9 Q9 X9 Y& w+ l; J" ~, O( W7 i6 Q        char id;2 e5 f, B2 {1 }; Q9 D6 W
2 `, y( o. F* U2 b9 F- m" b5 q/ y6 \+ H4 z
        Agent(char id) {
  |8 u- f" Q( U$ ?. k: n                this.id = id;
1 X4 D8 b+ k8 `        }
) H7 {* h+ E/ l+ p% d1 Z& K6 [4 a0 u& ?4 R3 q3 n
        public void agentStep() {
6 W1 [' d4 h0 k                System.out.println(id + ":" + Globals.env.getCurrentTime());
% A; Z/ j1 L' n. T5 T        }4 L1 Y& t+ M! h; h' h4 n) {
}1 i, c8 S- T5 l
) }7 H$ a. v4 ^0 P( F& |
public class ActionGroupDemo extends SwarmImpl {
2 t: F7 ~; g. [4 e/ ~$ @5 O& m        ScheduleImpl schedule;5 J' t$ e) N1 |7 B
        ActionGroupImpl actionGroup;8 y: U3 S" g& t8 Q; r
        ListImpl list;1 n3 r. W4 B& B" Z7 H7 C$ ~
        char Id = 'a';( c1 _2 T# A! z( f5 x

- r  Q) U5 L+ @1 w+ {        ActionGroupDemo(Zone aZone) {
$ C4 s% d4 s& M: c# K                super(aZone);6 f: _) s- I- I+ d' ?" x1 V  |+ P
                list = new ListImpl(aZone);: U* Y# o1 \/ ?
                swarmSetp();
- _" a% T# x: s0 g6 H- }- z" k                actionGroup = new ActionGroupImpl(aZone);
9 r8 @8 C  ~' ]" [3 Y: z                schedule = new ScheduleImpl(aZone);/ t, K$ h; C+ `, Q0 ^4 J
                try {& K4 a8 e$ T& J; f+ j& X, x3 ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; c# v9 }% R% n/ i8 N0 N# f+ [
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  D# L5 _- [% t1 O: e4 e( a
                        
: s8 P' z$ C- m' S1 \8 N                        actionGroup.createActionForEach$message(list, agentSel);
  |, Z; u" w' [3 b                        actionGroup.createActionTo$message(this, swarmSel);
$ N' Z4 Z1 K- e' }. l. o5 A! d- @                        schedule.at$createAction(0, actionGroup);
" k% x1 |. h% {. n7 L( g8 K) |                        schedule.at$createAction(1, actionGroup);
: ^+ }5 t; U) g9 c# }: z                        schedule.at$createAction(2, actionGroup);
( _, `/ Y% h3 H' [
! g/ n% d+ M4 n& M- o                } catch (Exception e) {% X) B* L2 Z0 [% A
                        e.printStackTrace(System.err);1 H, U( h/ U# M$ x1 H
                        //System.out.println(e);: a9 Q8 h% Z0 `1 K* [
                        System.exit(1);7 L; R% l" C! x
                }
' ]; Z# [+ _5 T2 T# P5 e3 T9 ~2 T" a- L3 l

( L* J$ T5 U; M2 }7 ?        }
  C/ W' l7 ]1 U' }
4 R7 s1 v' H6 V2 T        private void swarmSetp() {# p6 t. x, K% z! A7 o
                list.addLast(new Agent(Id));0 F# q5 j0 M) K, \! x
                Id++;) ~. ?( u- Q& n* R' ^  _% [4 {
        }
. I2 l$ d) g1 z) [! N
# g1 n+ n7 j4 e: u" ]        public Activity activateIn(Swarm context) {* w  w; ]$ J, d# a& i! Y, U+ `
                super.activateIn(context);
1 l5 Z( J6 x( m1 N) Y                schedule.activateIn(this);# K5 Y. j5 j* ~. @
                return getActivity();
" R: f+ q" @$ |, t$ x& ?        }6 O( x2 G  @- [  r

( b0 Q% {0 i" T' ~        public static void main(String[] args) {. {# x6 J4 y3 Q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! H. I" ^$ R! `* J+ h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# y' J6 H8 T! ^! L1 s                swarms.buildObjects();2 A  q. x2 o/ g+ H  q. h" E
                swarms.buildActions();
7 e1 ^* x6 I7 v" }# _6 c4 w9 f                swarms.activateIn(null).run();1 d$ W5 O, o7 T4 o& v
        }
* l* ]5 W0 ?. m" Z& M
+ ~; N  V+ G7 }3 L. F1 G& m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-4 05:12 , Processed in 0.015615 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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