设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10695|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  y  R7 Z0 Z1 |9 \3 `" g& @
* R7 U7 Q3 D6 F. Q, r0 l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 M! F9 m) H9 v, d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 N1 J; K" P: xswarm.SignatureNotFoundException( C. y4 V' h/ }9 W) B
        at swarm.Selector.<init>(Selector.java:76)# c2 q( g* a  b; c; h# F) p+ B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* ~7 x8 i4 X. S! \        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 R5 @6 k1 m: a/ D. F* h& r* ^
: u$ D/ }' M1 k3 S7 C+ T
! p. ?2 E! ^" V  gimport swarm.objectbase.SwarmImpl;
7 s1 U+ i2 ^* Jimport swarm.objectbase.Swarm;
. x  j- v3 a/ u7 n; ^! fimport swarm.activity.ScheduleImpl;0 W& a3 e  C) Z% \
import swarm.activity.Activity;- d) G. R- `4 ?+ h2 l) u
import swarm.activity.ActionGroupImpl;1 h8 P! A! s& a1 l1 M
import swarm.collections.ListImpl;. f! l1 ~+ k; K# x8 U9 a* G
import swarm.defobj.Zone;
9 H% w! B! ~  L  W* Mimport swarm.Globals;& Q' h& h5 i) b' ^
import swarm.Selector;
7 V. v* c" j3 e/ y7 L% t* dimport swarm.activity.ActionGroup;
4 g; R& q  m+ E. u1 w. `; `2 C$ Jclass Agent {: f3 X+ a; v$ c$ H8 f, l
        char id;
! `4 J9 M0 v) m5 e3 P* o5 G3 m% x+ h4 o
        Agent(char id) {4 e' ?$ o6 R1 n0 `7 Z( |, ~
                this.id = id;
% B( s$ C- V8 m+ G        }
: H  v3 J% `) f5 G2 ?/ c" w5 C4 F' ]6 n& Z. I4 v
        public void agentStep() {
( l" y2 v  i( B1 L                System.out.println(id + ":" + Globals.env.getCurrentTime());- R) Q2 C# O: @  J5 y
        }9 z9 T* P* @! ^  ^2 C( r
}/ J" |& t4 u4 E: {% X$ j
1 G2 R8 z6 r0 l: P( ?& Q5 d7 u" T
public class ActionGroupDemo extends SwarmImpl {
1 j# t. z4 c1 o        ScheduleImpl schedule;! K9 O6 S6 N/ @* }0 G+ W/ C3 D
        ActionGroupImpl actionGroup;, @4 l( Y" H( l- ~0 ~* ^3 i# ^+ y
        ListImpl list;
$ X$ I( f1 ~+ i0 H5 ^  H$ `, v        char Id = 'a';8 ]+ t, a7 m, T* h; I2 J) k; ~/ F
+ F. \- @+ ^( d! A0 M* p. w
        ActionGroupDemo(Zone aZone) {% }4 e  t& ?- a. M* k4 `* h
                super(aZone);
; w/ u. B* o- V* G* h" n                list = new ListImpl(aZone);
0 U0 L" M* h! C2 }( ^                swarmSetp();* J. a5 f7 @; Z. o
                actionGroup = new ActionGroupImpl(aZone);$ Q% R; z" j# t1 ]9 N+ b
                schedule = new ScheduleImpl(aZone);
( s: c7 q* B9 D9 b+ S                try {# e8 d2 a8 I- w" W' @
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, |( a$ C3 V; ?; Z1 \+ N                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ d4 H" P* O, m% n& f
                        , L2 o; J( S/ ]# B/ ?
                        actionGroup.createActionForEach$message(list, agentSel);
% j9 B$ b: t7 ~                        actionGroup.createActionTo$message(this, swarmSel);
# F0 E; ?% @, Z8 c) t) @; |- [                        schedule.at$createAction(0, actionGroup);
  y$ N$ e- A0 G                        schedule.at$createAction(1, actionGroup);" I% H9 d2 c$ }- z  [) k
                        schedule.at$createAction(2, actionGroup);2 q8 Q( ]6 _! |
2 R) C3 ~% ~. |$ a
                } catch (Exception e) {
$ B$ h2 N) [5 Q7 R7 G3 Y                        e.printStackTrace(System.err);
5 y0 n2 C. Y! h3 ^. _                        //System.out.println(e);) e( x- U/ m  y' Z; E0 ~
                        System.exit(1);
1 A) F, q: ], \2 H* o# F                }
; z: A" x3 C1 ~6 ]. E' |. m. x! f" e& w& h) ?9 O
" S) f2 N3 m5 P. E- t3 a3 x: V/ k+ ~$ G
        }6 X+ i6 V, M9 }8 i1 x9 f
! j- ^7 A0 ~/ G5 c+ V% ?6 ]
        private void swarmSetp() {
6 z* q8 z, x( _1 z                list.addLast(new Agent(Id));# {* [1 {" m$ Q6 M
                Id++;5 r5 ~; t7 i* J1 m
        }
* Q- y+ P* }" ^, k1 V
' X" Y) c8 P& Q4 |7 g1 |) P8 l3 ]        public Activity activateIn(Swarm context) {7 \2 A$ N- q. i% j! ^) Q. t+ o5 ]
                super.activateIn(context);
' A- _0 y- G: s+ O* t                schedule.activateIn(this);
: [0 M( \- K1 k) M                return getActivity();
+ H' l( h4 w0 E        }" k6 a' l5 J' p. p+ ?: W0 s' `
* W* a+ E% c5 g3 f' ?
        public static void main(String[] args) {
* c5 m4 |8 b  g$ ?$ a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ e$ \1 I$ Z! H+ e+ q1 m                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 i, d/ l( K  i- j  L! U
                swarms.buildObjects();
7 o" a/ o1 o! X# |1 s                swarms.buildActions();7 {5 n. U) \9 Q' B& M0 Z' a4 i* i: X
                swarms.activateIn(null).run();. `1 ]# _- [: \; f8 C9 E& B
        }1 T9 d; I& e9 M9 M
- |/ A5 s2 N# V9 N
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-20 21:46 , Processed in 0.016260 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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