设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13880|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# X4 s4 I( k# B2 R& h: R( P! O, g/ E6 g/ h4 v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" v' M: m* ]% I& O4 h* j0 s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 {0 [- c3 o4 w/ I6 g: `swarm.SignatureNotFoundException( p( w6 S5 ^* c9 V* ^
        at swarm.Selector.<init>(Selector.java:76)% o" J3 ~; }/ `. z  T% y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 {# z9 b1 D7 K3 u7 s8 h
        at ActionGroupDemo.main(ActionGroupDemo.java:67): I# k8 ^1 A0 i% x$ ?; @: \& O4 y/ t

$ @  p8 y- }- c0 c% x
: b4 y1 P, ~6 ]import swarm.objectbase.SwarmImpl;
# P- i/ e0 P' e  Y  k& P/ _import swarm.objectbase.Swarm;
7 `* P8 h- _$ mimport swarm.activity.ScheduleImpl;
2 K: S( R: U7 r; v" Aimport swarm.activity.Activity;, G& \; s; c3 y+ @' M
import swarm.activity.ActionGroupImpl;
0 U2 a, _+ l& Q% Eimport swarm.collections.ListImpl;. _! ]7 V( O) ~4 [! q( B6 S3 N
import swarm.defobj.Zone; ! b, G! F# i3 z* j* s9 x0 X
import swarm.Globals;( J( @' L* g+ |: E
import swarm.Selector;
+ D' J" m: }5 [  w7 Wimport swarm.activity.ActionGroup; " G) k# Y, b3 t+ V) S
class Agent {2 p6 C/ i* m- W- z$ a
        char id;
/ D/ H$ v: F) d1 W+ E
) p) @; ?* T7 j5 g$ [        Agent(char id) {6 J8 p6 J1 |$ v; m- k  _
                this.id = id;. d: s2 }  ^3 a7 q) c0 r8 n
        }9 l: i; `( z" U
: E3 ^, b8 n+ o) {- ~/ J. t; O
        public void agentStep() {
; g6 Y' y) W8 d" A9 x# {                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 |, y4 {. X0 {9 w2 g        }
3 w0 o* ]9 `( s( b/ ~0 b" O; h}. ~. N' F# ~9 ~' z! G
4 y' d7 g; Y3 J- _0 ]8 @& t4 W, w
public class ActionGroupDemo extends SwarmImpl {
# H) {# Q- z+ Y' u. x        ScheduleImpl schedule;$ o, h+ Y' H5 D3 O8 @& p3 l
        ActionGroupImpl actionGroup;' ]5 n/ s: u9 u
        ListImpl list;% C: o( @  C# [" @# ~
        char Id = 'a';4 Z, f- G, B. f  w  G9 @; ]+ T

  N' {, {' V* y( L6 S4 n        ActionGroupDemo(Zone aZone) {4 V( l' W2 f+ w* T1 q; r
                super(aZone);7 ~4 i( |0 ^8 \7 M6 F- ]" U- _6 J
                list = new ListImpl(aZone);
1 T( T# Y% }' [! z+ I- Z/ P3 C                swarmSetp();* H" {! S7 N/ L
                actionGroup = new ActionGroupImpl(aZone);
6 p" `. {5 N( j. _; U* \7 ]  x# r& U                schedule = new ScheduleImpl(aZone);
" f4 K6 k+ }/ c4 ?: }                try {5 q0 G1 s8 j7 c4 y. r9 T# P7 G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 Y2 E( H! Q- d( i# a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, }8 ]* ^& o1 X% j                        
, P* P8 G+ C6 e1 d) X# d' w3 ^                        actionGroup.createActionForEach$message(list, agentSel);% S1 J; l; _/ N  J7 R* l) E; Z
                        actionGroup.createActionTo$message(this, swarmSel);
6 X3 \/ G4 I" k3 Q                        schedule.at$createAction(0, actionGroup);
( t: l0 R2 H4 V9 S, [0 f                        schedule.at$createAction(1, actionGroup);
' r$ K7 s% v3 v; l$ Q, u                        schedule.at$createAction(2, actionGroup);
6 X- j: G% {* o3 i  Z6 F- I; e& S  E
                } catch (Exception e) {, z5 X9 _- s3 M
                        e.printStackTrace(System.err);9 ?3 V% W" s7 l2 A
                        //System.out.println(e);% U3 z; @+ e: }0 L$ B. I+ M
                        System.exit(1);" E$ q7 v3 Q/ t4 K8 K8 M% @
                }. }6 z) x* U1 b' a  F; o2 S# a
9 y' Z5 ]9 I$ s9 V  v
* C( U, p3 w$ T9 Z9 Z* C9 R- _+ R, U
        }8 s4 K2 L2 p0 z) h. w+ W9 R
& Z+ Z: B0 R" X2 l( h; t8 W. J
        private void swarmSetp() {
& Y! ]3 J- C  Y! H0 r8 A                list.addLast(new Agent(Id));+ U( c9 a4 x! D$ L+ A
                Id++;
6 Y/ t3 i# t- w' N. p# b, e        }
. f' }( K3 w% I; E% W( [  [' L/ n: f) ^
        public Activity activateIn(Swarm context) {# T: x# J9 x: S  X( f+ r" ~
                super.activateIn(context);2 J  [! ]; S% K3 F) t4 {
                schedule.activateIn(this);0 \( h  q$ W- E7 H
                return getActivity();. d1 y# k  ?; b/ N
        }  X/ G7 d+ u: s' y+ c
$ ^; E) ^: l6 W  j3 a0 @
        public static void main(String[] args) {
( d. D8 v, n- r9 l1 H                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 |' I' s5 i" o; S$ o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, L3 C% q; z' `3 r                swarms.buildObjects();
; u/ s0 r9 F: t0 ^" r# h5 u                swarms.buildActions();
1 h. X! {1 f' F; M                swarms.activateIn(null).run();
9 ~! W( a% r, d% G4 n( U+ a7 _        }6 `" T4 W+ \+ D0 p+ n+ w7 C
$ Z7 D/ u# S. C" w9 m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-20 14:33 , Processed in 0.014224 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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