设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11604|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 P5 U. N/ I8 w" ?& Z# L
5 L& [  d8 p( y& Q+ E+ g1 h9 O, @; b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: E2 ]* }" N( i% \7 v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! K- t' a. {; M4 G% z! fswarm.SignatureNotFoundException
7 W% Z# F9 t* o  D, t        at swarm.Selector.<init>(Selector.java:76)  H; u9 c& @& M- s3 y. \% c) |8 j7 @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; a1 {6 o0 @0 b        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 g+ b8 u( `2 v! ^$ t

' f7 x6 b5 I+ E4 J2 b8 E
4 @  j( V! Q* ]& S; x8 Timport swarm.objectbase.SwarmImpl;& H- `* \" e' Q* g) b
import swarm.objectbase.Swarm;0 O) M2 J) K) S; S7 G
import swarm.activity.ScheduleImpl;# K; T- C) ?# Z; [* s
import swarm.activity.Activity;
! }9 Q0 [* j0 Y/ P, j: Dimport swarm.activity.ActionGroupImpl;
8 g2 ]. p, z* x5 z8 simport swarm.collections.ListImpl;! a: n$ |/ O2 Z: Z
import swarm.defobj.Zone; ) F- R) I8 z' v; R6 f
import swarm.Globals;
7 o( T* y) o7 F+ p/ Z! uimport swarm.Selector;6 _+ J9 X$ t* w( F
import swarm.activity.ActionGroup; 7 v6 ]+ f, E4 S2 z" s& ]
class Agent {
6 y5 W) s9 [  H, f3 v0 l0 P" H% [        char id;
1 p3 A& y" a0 |3 h% t6 a2 ?1 b0 b2 N9 ~" R9 _+ L- R
        Agent(char id) {
  q1 Q& v4 j! G1 P, ?                this.id = id;2 ]- t. Y. Z0 g7 s6 w' j( h
        }; Q# l, a$ R5 ~! y) V) B

- l. Q- z3 c; k/ v: u        public void agentStep() {
2 G: j. V$ d1 `! T+ b                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 p: I  G# R" T1 F1 F2 z        }
1 p$ X+ X; K; r, n! B( h7 G0 [" X}3 n3 @( y6 a: N

5 P9 J: q' W# J7 l9 s& a5 zpublic class ActionGroupDemo extends SwarmImpl {. A/ L" R. u/ l% k4 ]5 `+ q
        ScheduleImpl schedule;, x8 x; P  ^: p$ A0 s  b6 W
        ActionGroupImpl actionGroup;
; g; d5 G) s5 z: x" Q        ListImpl list;
7 K( \' q& X( B        char Id = 'a';8 Q% b! I: l% |% H
- a5 e- j' P( q" f" L: _3 q- W
        ActionGroupDemo(Zone aZone) {
* p' V# T# {: T0 n' x# @                super(aZone);6 J7 j( P* t# e! x) X
                list = new ListImpl(aZone);9 p0 Y- r1 u; @
                swarmSetp();
  Z' C! ]' g+ W; I                actionGroup = new ActionGroupImpl(aZone);
  D! b- `" W% O3 v& D& `                schedule = new ScheduleImpl(aZone);
/ I8 w* y/ Z: j/ V                try {7 j: h# ]+ p9 a8 }4 x) i5 z8 C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 k1 [: L% r- b  E! J" a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- }4 X. O: y/ l% b% Y
                        4 W% ^: N( K6 \. A0 h5 Y  L
                        actionGroup.createActionForEach$message(list, agentSel);
6 i; h9 }' P4 v) r) x                        actionGroup.createActionTo$message(this, swarmSel);/ r9 Q/ T. @0 v* C! h
                        schedule.at$createAction(0, actionGroup);, T1 k7 ?, `" ]8 d" ^. \
                        schedule.at$createAction(1, actionGroup);1 t, ~# B4 E( |
                        schedule.at$createAction(2, actionGroup);
% Y" T- S' s" Y- P# u0 H* T! W  P& x
                } catch (Exception e) {
! x, `1 _, U% M, j! ]0 v" |$ B                        e.printStackTrace(System.err);
) p0 U* p. y8 ^5 @& a. s                        //System.out.println(e);
: w, C6 ^" I( x% O' I* o9 C                        System.exit(1);; B$ u0 a4 D1 _+ N) F- m' r
                }
# ~. Q% ]4 R. F. l
' a$ q% R  Z% _8 T3 I7 V& k" B! ?% @+ \
        }( o4 F/ U5 o9 g( G6 C" O
2 ^/ g+ _" ?' B- F0 {
        private void swarmSetp() {; m5 `  z  h" v4 D  W1 N
                list.addLast(new Agent(Id));
# x( n' \! [) b  K  d                Id++;
: p' I3 r6 q/ z* g" Z; b5 o' g        }5 T4 T5 \1 I- {: J1 C4 d/ T

  h" K1 \% _/ s2 f$ h2 y- ]        public Activity activateIn(Swarm context) {7 `1 f0 _+ u; w+ s2 M/ Z
                super.activateIn(context);$ R+ U7 _! s; L: ~  _
                schedule.activateIn(this);
) w- F$ c+ z5 ?7 D. q                return getActivity();
. t* _' x" G" f; V" u$ D& O        }  m- S; G& U, k

, j3 v+ g, ?$ W3 l* j! ^        public static void main(String[] args) {+ e# `2 k: ?* v6 V. W/ z. g$ o6 M
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% V  C& W  \) {% f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 b1 a' }. z4 q! N- d9 h
                swarms.buildObjects();5 d' N$ C" C7 r, s6 H
                swarms.buildActions();
9 `8 j. n, L6 {                swarms.activateIn(null).run();
& G, K- P( K6 D" b( O' p  B9 _: Z1 H        }
- e7 Z6 ^' p$ B5 W" {. X+ O$ \( Z0 R# @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 00:41 , Processed in 0.014292 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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