设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5483|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  t  I+ X+ s. u
; h4 x" i& Y; h1 x: f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ K  c# P4 w7 |7 f2 c8 I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 N- F" u1 _  Z7 [swarm.SignatureNotFoundException. L8 D8 G& a& f$ c- D% y
        at swarm.Selector.<init>(Selector.java:76)' u1 t' k: L$ O0 |/ M! k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) r5 P5 }0 z1 B0 q) |$ A' a0 d0 x3 J        at ActionGroupDemo.main(ActionGroupDemo.java:67): y" t& Z1 c% `4 E  Z4 _/ n

9 X4 ^: h0 H; r2 G( _
+ f+ N+ p) u( g1 [% |* Limport swarm.objectbase.SwarmImpl;
" j# |9 I. c  ?% r% h; Simport swarm.objectbase.Swarm;
# g/ R0 y/ m  P( n! u! _7 @$ oimport swarm.activity.ScheduleImpl;
2 R2 j* P- [5 a9 u; pimport swarm.activity.Activity;
5 k0 V, |! b8 ?import swarm.activity.ActionGroupImpl;
1 L, s' C/ P/ j7 l! uimport swarm.collections.ListImpl;1 i; X9 T. R- f1 {7 k, m& W1 i
import swarm.defobj.Zone;   o* |7 A) [  Y0 P# l
import swarm.Globals;9 M  Q$ T  p" ]' [% i
import swarm.Selector;
# B% Z; k# d' P% ~/ S: X$ Gimport swarm.activity.ActionGroup;   M4 X+ R. A; |8 z& s  Z7 D
class Agent {9 q  t# q/ u5 E
        char id;/ a/ o. _7 G' j5 y" X: i

, b, G+ _3 z- j/ _( `% |+ s9 t        Agent(char id) {! [9 {5 ~( |2 y
                this.id = id;
9 b+ ]% M/ d2 s( Y$ \, b        }2 n$ a5 k  e. ]
; e# n* {# r: O' u- i
        public void agentStep() {! ?: G, U0 d4 w: k/ K# s, W
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ J( @$ C4 a# b0 |  i
        }
4 A3 z3 ?- ?- Q" j1 h$ V4 I}
  S5 ]5 G* t" w% x# ^
6 X& b; e1 I3 q; W: Dpublic class ActionGroupDemo extends SwarmImpl {- x$ Q' g- W' p/ Q" o6 [
        ScheduleImpl schedule;0 t: W! B+ `8 U7 d0 _
        ActionGroupImpl actionGroup;
& y  [- s9 O6 r# A7 M        ListImpl list;
: T* \! a6 s5 i2 A        char Id = 'a';
  ^$ \5 l6 z7 p2 s$ j: F
0 I+ p& t2 Z& U1 A' \        ActionGroupDemo(Zone aZone) {
# f: J! N  p( K1 r0 S                super(aZone);/ W3 J5 }! u: s7 I/ c
                list = new ListImpl(aZone);; M5 j  ~  \  e$ f% E! o7 \
                swarmSetp();4 ~3 e2 J# E9 ?8 E
                actionGroup = new ActionGroupImpl(aZone);
: l  C+ |+ m" D, ]7 V+ P                schedule = new ScheduleImpl(aZone);
1 Q0 v+ g/ @& C3 z- o& I$ m* X" E$ }                try {
  ~# x8 V" Y6 z' Y7 v, a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( ]' H: a- L6 u
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. H8 ~! y4 [7 K* P
                        
% G( L. M6 G# [0 z  K: l: a                        actionGroup.createActionForEach$message(list, agentSel);! L. Y4 F9 d5 e" G0 Z- m; o* C* A
                        actionGroup.createActionTo$message(this, swarmSel);
, I4 O7 M; y( B" M$ {  u                        schedule.at$createAction(0, actionGroup);  I, f% a+ J" y0 D5 U5 Q
                        schedule.at$createAction(1, actionGroup);3 q8 j5 u& P: r
                        schedule.at$createAction(2, actionGroup);
4 x* M% R5 L+ \  E6 e( c$ T' e  J9 z, ^; S' M
                } catch (Exception e) {% L5 B# u" f. b& }3 e6 T
                        e.printStackTrace(System.err);
. h3 T' ?! P$ g$ f                        //System.out.println(e);* q% a% Z# G1 W. q/ a* ~
                        System.exit(1);) D8 _" h/ L5 P  R
                }
* h, D' T0 [  l; x( A! L3 `
8 E3 O; v* [7 Z% h$ E, M# l6 ?5 N! {4 p7 ~+ \; ~  B0 q
        }* l8 k0 b' A9 j$ W" k$ ~  o
/ a0 R% Q2 h, O. F6 ?" x
        private void swarmSetp() {
8 h) ~7 A5 z9 J5 G+ C                list.addLast(new Agent(Id));
8 k  k6 ^( L4 ~1 }                Id++;! r# N4 p6 C& x: _) M
        }8 e6 }8 R: `) ]% I
: m( g1 l5 K9 x9 b! [
        public Activity activateIn(Swarm context) {6 e! A# ~4 {0 t6 r0 \
                super.activateIn(context);. u. v; s$ T6 k( v
                schedule.activateIn(this);' j7 O4 a+ {! _/ y
                return getActivity();) m2 u1 p* W# d& E9 C, K, l5 @
        }
7 J2 u5 g4 r7 E4 {( `0 f# A2 A: {
* X8 G& z; l* m4 ]9 B" G        public static void main(String[] args) {
# g: \4 Y9 `& ~; H2 o. y8 h- d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- X- `+ s2 a; s" \5 ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) H) Q8 N. z1 W                swarms.buildObjects();4 k" I3 d- w/ e6 O* J
                swarms.buildActions();
/ a! W9 ~# u& f3 V) I2 J" l                swarms.activateIn(null).run();
% f1 u# |8 q8 H) D        }
5 y$ C; L( H% u! z7 Y7 z+ [
! p) g- j) ~. t$ A6 ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-10 14:07 , Processed in 0.018193 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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