设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4710|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  F( x' K% y: \& K, q- }  t$ u- ~# ?4 T( Y( Y* B8 r5 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- E; L& ]6 x3 J2 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% g' o5 x8 |4 j+ B  F+ Xswarm.SignatureNotFoundException  A2 `0 a& H  E2 _2 L
        at swarm.Selector.<init>(Selector.java:76)) a. H1 |# N8 @$ H8 N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( c+ q8 X+ s" M' \        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. W  }2 C* E2 O8 ]4 W
6 A5 P) z: ?' p; o* s* }) O; ~. O- v# Q
import swarm.objectbase.SwarmImpl;
. \- g$ U7 A0 c  W$ M% X6 iimport swarm.objectbase.Swarm;: n/ ~& N) ^& N. ^
import swarm.activity.ScheduleImpl;" X5 X- o6 J, d4 k6 b2 s" n0 ~
import swarm.activity.Activity;
) E5 l* r4 u$ |2 ~import swarm.activity.ActionGroupImpl;
. Q9 w1 m+ |: q! M9 Z! E3 _import swarm.collections.ListImpl;6 \/ Y. }; x3 ]( x- J* b1 ]
import swarm.defobj.Zone;
( L% |3 e. K4 L# l* A/ i0 N$ f1 k' aimport swarm.Globals;, g9 C; [4 h+ m- ?6 U
import swarm.Selector;$ d% g  ~/ o- X8 z
import swarm.activity.ActionGroup;
# ~0 Y* k8 n9 R! S6 M7 d$ kclass Agent {5 O" N% g- _: C7 N
        char id;
- n) Z7 a- |! C! |5 r
8 X6 ?1 r' A0 y! `5 }4 x        Agent(char id) {& ~0 a' ~+ w7 |# {+ O) }
                this.id = id;, p6 D# i3 V% x2 D5 f5 [0 l
        }
, ?( ~7 h% S5 z+ i( x: ^
6 J8 _3 H- Z5 m        public void agentStep() {
( o  _. y2 [4 P                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 Y& A# {  @3 \7 \        }! ]3 v" q+ }8 A* H" a: r) g( [* c
}
8 f$ S* y% l3 V5 T! A3 g$ `0 j
public class ActionGroupDemo extends SwarmImpl {: d9 b+ f- q( I+ T% m$ w$ C0 x$ f
        ScheduleImpl schedule;
5 J0 A9 v7 z0 \4 [" G        ActionGroupImpl actionGroup;6 ?! X4 q# L: n
        ListImpl list;
1 T9 B" }; {* F! K1 a        char Id = 'a';' K  ?, T" t* r0 M( V
- ~) n, x; {* C6 e9 a
        ActionGroupDemo(Zone aZone) {
& K) r1 [/ Q5 `; h' L  u                super(aZone);
9 F  Y! [0 ^7 y0 d" G5 H                list = new ListImpl(aZone);
9 Z+ ?! `" S: [; e                swarmSetp();
% G8 K7 ]* b- U) s( W2 O2 G0 ^                actionGroup = new ActionGroupImpl(aZone);
0 x$ p8 s: b' H0 o4 q! J/ a0 V                schedule = new ScheduleImpl(aZone);
4 [  e5 x# I* s2 B! d                try {. P1 h2 b/ [% o- U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 J9 O, J+ B% i( j' ?6 @# a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 I# {$ I! t' m
                        ! a! v( ?; i* ?
                        actionGroup.createActionForEach$message(list, agentSel);
" _0 W. x# o1 f% R: b, x3 d% ]                        actionGroup.createActionTo$message(this, swarmSel);
; z$ C$ H% D0 z% x% A7 x9 g                        schedule.at$createAction(0, actionGroup);2 B  \- V' H/ _( W# N5 W  T
                        schedule.at$createAction(1, actionGroup);4 ~, u' l) c% }1 e0 V
                        schedule.at$createAction(2, actionGroup);
" U" Q% M' t8 i
" J1 O$ M* H: @$ _$ c1 _; U                } catch (Exception e) {6 G  T5 k  q0 C  L
                        e.printStackTrace(System.err);( M9 W4 e# d# U! a
                        //System.out.println(e);$ O" V- ^( e+ Z8 a
                        System.exit(1);
; W; z. b: |2 R. j0 w5 h                }4 E: H9 D; [2 U# z
( R, d8 q8 F/ T9 t  `* Z  Z
  F. z( x' i2 x- R
        }
# X" {7 y& ^7 G  Y" o8 \" O8 U
3 g+ J0 u" U# R# c1 N) s( i2 E1 }' q        private void swarmSetp() {
7 G$ f) @" x) Q" |+ o8 Y# D                list.addLast(new Agent(Id));, j$ O0 q* K- B0 p
                Id++;
0 `8 |' w. C( O        }
' N( C# w: Q' r! {3 X' |# e
. Z  q% I4 X& E2 m6 T        public Activity activateIn(Swarm context) {
6 W1 Y) K! H4 O! a) G                super.activateIn(context);
: v: y# e* {4 M5 {                schedule.activateIn(this);+ K5 v( b  \+ p, o3 d
                return getActivity();
0 l* Y! p1 i" Z, X$ B        }* l% e5 y. n5 m  H0 R/ p3 w" N
' i0 }* S1 m. t
        public static void main(String[] args) {2 U, l3 [" L! J6 X8 T! i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' ~! Q+ N, C4 X# W5 ]) f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 f  J  g. k0 H                swarms.buildObjects();; Y- ^* a3 D& b" ^: @
                swarms.buildActions();7 G: U$ D9 @* J0 S' X
                swarms.activateIn(null).run();0 e  q" _; R1 d
        }# p+ l5 R. c* ?9 p( S, s

% t1 `& L! B- N. ^1 j  B+ f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-8 12:14 , Processed in 0.020444 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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