设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11237|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( s: s' E- O9 C5 _0 ]$ A7 @4 i9 b+ I1 z; X% D- [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ W8 M+ N; L1 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% X% {# G) {2 ]0 i
swarm.SignatureNotFoundException
8 ?; z  e6 m( S! a- L; ~        at swarm.Selector.<init>(Selector.java:76); a) s" D/ a0 I! I- T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 T. v" E0 p( @4 j" K1 L1 P* j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ q# A9 j! e: _' U; J6 K

& z2 W' H! t4 x+ @0 j7 {! m% G/ j, W4 l# s3 \5 @# ^
import swarm.objectbase.SwarmImpl;
  W. v- w: j$ {4 F0 B& B) Vimport swarm.objectbase.Swarm;
2 g" D8 d% U7 G& o% O: p( n1 Pimport swarm.activity.ScheduleImpl;  v$ i, K4 p- h
import swarm.activity.Activity;
$ z9 ^, S. K* n) q) mimport swarm.activity.ActionGroupImpl;, O- v4 W8 k. O; [4 a4 n
import swarm.collections.ListImpl;
/ P' C$ U+ x; H3 bimport swarm.defobj.Zone; $ P! Q& ~! j" T2 F
import swarm.Globals;, f; m6 B; |" X/ F( a
import swarm.Selector;/ P* q  {: }. K! A* l: V2 L
import swarm.activity.ActionGroup; ! u% P7 V% s1 H( c8 I: K
class Agent {
% u! q1 u- L! }4 N        char id;
  t2 y0 d$ K8 K# h, b- A7 H
, p* j$ L- T- Y) E; e        Agent(char id) {- w6 }0 a. f) \
                this.id = id;
6 c$ A" g2 B, c        }( S- L+ J9 T' W% F! R. c

4 I- f- }  Q% A+ C$ g+ c% v/ Q        public void agentStep() {
, T9 N5 O% K, f8 O) ~8 n6 J                System.out.println(id + ":" + Globals.env.getCurrentTime());2 [& C& w- h/ O1 E: J' K& Z, m
        }2 B5 |- l  B8 x. J
}& \" a5 _+ G# ]: m: T
# U7 l3 f+ c; P
public class ActionGroupDemo extends SwarmImpl {; G" G7 T+ B2 M; u! y
        ScheduleImpl schedule;
. j; J8 U8 \' N0 l! K- o        ActionGroupImpl actionGroup;
1 V5 k+ e* K1 v7 h! B        ListImpl list;+ N. P  o4 y/ b% Z" j5 f* q
        char Id = 'a';2 N& A0 g; C& b

2 H4 w! g/ j' }# O        ActionGroupDemo(Zone aZone) {3 u4 z, t# h3 c5 l
                super(aZone);3 B& ~9 e+ U+ X+ z3 a
                list = new ListImpl(aZone);& e3 t  V) _# K5 w3 e
                swarmSetp();% Y# X6 I& I7 n7 K9 j
                actionGroup = new ActionGroupImpl(aZone);3 V3 P1 h) @! @5 v2 d* [& V5 u
                schedule = new ScheduleImpl(aZone);% _+ q! {3 {8 G
                try {
; f; R: M, F  O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; v0 O' x* a% O+ ?9 d5 _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 O  C" o4 i  X! d
                        
: C% K6 i$ g) s2 r                        actionGroup.createActionForEach$message(list, agentSel);& K# z- g3 B5 a
                        actionGroup.createActionTo$message(this, swarmSel);( Q0 W# H5 P+ d/ s4 w& c* y
                        schedule.at$createAction(0, actionGroup);: @$ Z+ \0 d  j/ M- _  R
                        schedule.at$createAction(1, actionGroup);
# \* \3 l8 |/ l8 r                        schedule.at$createAction(2, actionGroup);
& L# l: t$ h: n1 b$ z# U) O& \9 [; y$ E
                } catch (Exception e) {
; S( |' F- _, k: R! t) N& }                        e.printStackTrace(System.err);
& H  o- q. I; v0 R0 [                        //System.out.println(e);4 n" u6 D! o5 A8 {
                        System.exit(1);' \5 r% T* _- j3 o( n  S
                }
2 [; l$ P+ H, @5 p& ?* [* i5 @5 l" D) a
9 \# t& J: H! {- |6 M- Z2 T
        }( |3 k% H* o/ f" K# Q9 r

+ e, B6 m+ m" C# N        private void swarmSetp() {
% a) i; v8 E8 a: I& c( `  M4 p                list.addLast(new Agent(Id));
, M: z- E. G6 J0 J4 Y! m9 \# ]                Id++;+ C% V  {6 B! l8 Z
        }
! W. i! E+ n" g7 ]  I9 v) ]8 z8 Q( T9 C$ G" C( v
        public Activity activateIn(Swarm context) {
9 ~$ {9 s: Q; P/ E. @: Q                super.activateIn(context);+ }# G- G/ c9 R6 q
                schedule.activateIn(this);
* |$ Q. Y' k# l: Q5 S                return getActivity();$ w: J) ~  i0 c* C6 ?
        }. _# \# O7 T7 p) A
/ N0 F- w- v3 q" Z' J+ b7 }) r' ~
        public static void main(String[] args) {
/ S: n2 L5 Z) X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& w4 C$ }* h9 d5 y% b2 i/ P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ R! r) I! c1 E* v7 v9 }
                swarms.buildObjects();3 U8 t* E5 E/ x9 v7 L0 C, e: y0 p0 ^- t
                swarms.buildActions();
% G0 a  ?1 t, {( Q/ R                swarms.activateIn(null).run();9 T# m2 U0 m" g/ p( Q* D( ~7 v7 ], d
        }  p9 h5 Y; [. x4 ~

9 e' T) C$ v& K3 N$ q6 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-6 22:50 , Processed in 0.023145 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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