设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10997|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # w, B, K% o! G2 ~# Z9 O( l" }
# M0 [* T! P0 N" v! a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; v" s, @2 T$ C3 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 y" L, I* y6 `swarm.SignatureNotFoundException% a# [+ M' f3 J  c9 W
        at swarm.Selector.<init>(Selector.java:76)% _! ~# `; J% o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 z& N5 @& \( A        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 w8 T. g6 }7 u8 A! @- N6 O9 e

8 e. u: s. s& P6 }1 T) g  j5 A8 _4 t
' g" a' H- B, i. {5 o( X) I" r8 Jimport swarm.objectbase.SwarmImpl;
: k+ I: D7 l. K0 I0 pimport swarm.objectbase.Swarm;
% J) z/ N' s$ A2 aimport swarm.activity.ScheduleImpl;1 b; _, v; e/ J, c
import swarm.activity.Activity;
0 Z' |3 x3 Z2 ^import swarm.activity.ActionGroupImpl;
4 I, X( u2 |$ M7 eimport swarm.collections.ListImpl;& ]4 k9 `* y8 p0 R) p+ g
import swarm.defobj.Zone;
# m" `% l- H4 M  M5 n. Fimport swarm.Globals;
4 C. K+ g* [! [  p5 }! kimport swarm.Selector;* {& A8 {8 B6 \9 i# \. h9 R
import swarm.activity.ActionGroup; ! G% v8 R/ K0 _0 X/ u( K
class Agent {
  d1 K: b3 j: j8 p& C9 T7 }# n        char id;
4 v4 t2 J# e: d4 s" m  I
( l. o/ m; _: K  ?% n: {        Agent(char id) {% b- p( o6 m2 i9 ^
                this.id = id;
5 C- O! \4 K+ y5 K        }
/ U/ Y4 p3 T* _. {5 y5 A6 g, Y: r: s5 \+ S  k) ~
        public void agentStep() {# t4 z+ ~+ N2 W- q  ~  @
                System.out.println(id + ":" + Globals.env.getCurrentTime());' L: Z$ }% L; k6 w& I% R
        }
$ A  S$ y; f3 x& Y# f- _}, [) T% b* w* n( P

" [) d9 z% `$ tpublic class ActionGroupDemo extends SwarmImpl {
4 j' ]. E, b, c+ {3 q! }        ScheduleImpl schedule;' c1 R  o3 A& N: Z+ e1 c6 n  V
        ActionGroupImpl actionGroup;8 N. [- q; p/ y; P; i
        ListImpl list;
. C- \+ E" [' d        char Id = 'a';& @0 \2 W4 T  x! f  N
; K7 g& D" |$ W4 T
        ActionGroupDemo(Zone aZone) {8 Z0 n" f% S  W9 b% H' R
                super(aZone);
; _9 N4 I/ o3 g' p8 N                list = new ListImpl(aZone);+ J5 v  I) T7 N; u9 z% E7 W
                swarmSetp();4 _# F/ r0 l! l4 J- P2 c
                actionGroup = new ActionGroupImpl(aZone);8 R2 N$ B4 b' }; O
                schedule = new ScheduleImpl(aZone);. `- p9 t0 Z- H$ V
                try {% T& \! u" U( x3 D; x
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ {& D4 _. n, |* n; d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& Y+ m# F; y7 A, t& L. b) F
                        : d8 R: K$ v) x. o
                        actionGroup.createActionForEach$message(list, agentSel);, l+ Z, m" B8 N, J3 Z3 P
                        actionGroup.createActionTo$message(this, swarmSel);
. T$ X: ^: z' a' u' X( e+ [* D                        schedule.at$createAction(0, actionGroup);( `$ g7 H1 T7 j
                        schedule.at$createAction(1, actionGroup);( u8 x) M  ?& ~. h1 R8 c, u
                        schedule.at$createAction(2, actionGroup);
4 i4 Q5 z* M3 o  k. H/ i. z/ p+ F) q5 ]
! ]& w' M- _5 U# Y+ n, b, {# w; y                } catch (Exception e) {7 I# A) m- b3 a
                        e.printStackTrace(System.err);0 `# ~  A7 A! X% u$ P3 p1 k
                        //System.out.println(e);: c6 A! f1 p+ G' g& C
                        System.exit(1);
& h9 t8 p+ _+ S                }+ e- T5 G$ B: r/ E1 a

* U3 a  m2 I- [) v. h
. {* x/ c/ E4 S$ C9 ^4 F* v4 @        }5 q& j( a7 ^$ Y
4 O4 R' r' F6 W5 n
        private void swarmSetp() {& E; Z/ n7 v; [2 W. d) K
                list.addLast(new Agent(Id));8 V6 b, p( N7 c5 [7 L
                Id++;
* @4 h# F$ v8 G6 m        }
3 X/ V8 ^3 j, {+ V9 i' |! R, D8 J% O- {
        public Activity activateIn(Swarm context) {
  R# t4 j- U* \( ?3 \3 U                super.activateIn(context);3 L/ F, K! }9 W' E
                schedule.activateIn(this);
& {9 b: T. a  L+ h/ y; v2 s                return getActivity();
6 l0 d7 D8 _$ Z8 D        }# ]2 e+ B) |5 r' g5 T" ?% H

* K7 D* H  R3 {$ c# Z+ S6 ~        public static void main(String[] args) {8 s0 J3 ^% j% s- O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 ?5 v* L; x- D1 w" F" K# q: V9 |7 t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 g5 ^  A0 P! M  X                swarms.buildObjects();. [& a- t9 _$ V$ A0 G% L
                swarms.buildActions();6 A' W( Y4 ?! v8 I$ O
                swarms.activateIn(null).run();
8 e1 M  {  M  G# \  V) f& F: S: N9 a        }/ s/ a& E4 E4 L) J# o

0 O$ r; Y. ^! s# t" z. R* Q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 21:41 , Processed in 0.012655 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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