设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10529|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % s6 a0 |/ ^# a( U& z- [

9 c, a2 I0 S  j5 Q# L' R0 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ Y% U# F3 E) s0 q+ H9 ]1 d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ b. u7 `& t3 kswarm.SignatureNotFoundException( \  U; O! N2 t9 I+ b' [
        at swarm.Selector.<init>(Selector.java:76): i- q5 D$ V: b+ \) Z5 }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). }9 c: H, r. R& G4 l) C7 J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 J9 J4 P, c" w' P( z
7 U( G" z9 |+ g2 g7 u/ B8 p" T1 l) S+ o! D( ^$ _
import swarm.objectbase.SwarmImpl;
; {% {( h/ a3 d0 I% f: C; `/ \/ rimport swarm.objectbase.Swarm;# a% N. A6 u6 c2 Q) a* C
import swarm.activity.ScheduleImpl;
! r! k4 G6 a! L6 n. g0 B3 Mimport swarm.activity.Activity;
* w# |% a1 [8 F7 [( z4 T/ C3 d5 X( himport swarm.activity.ActionGroupImpl;
3 Y$ ?" b; ~& h! S) ^$ Eimport swarm.collections.ListImpl;. g# j" t: J6 h  T3 \: K, Z( E
import swarm.defobj.Zone; 9 C0 C+ C, H; E$ C1 C
import swarm.Globals;
( Y! d: X! j. f) r; N1 s1 Vimport swarm.Selector;2 q9 h7 u# j2 M& k
import swarm.activity.ActionGroup; 2 n0 b+ |7 r" n6 p8 j
class Agent {3 ^! \# [! [& v4 |; n
        char id;
  f- Q0 w/ m7 {4 w
# Q( M, E; K( X. z        Agent(char id) {
" F, v7 N" `% U, `                this.id = id;. g6 K( q& q# c: X/ e1 E
        }4 i. g5 `2 D" y/ U+ E
' f( `$ L& o6 I* w" ]* @. q
        public void agentStep() {) m" h, m/ p% z* \# k+ i+ [
                System.out.println(id + ":" + Globals.env.getCurrentTime());- t4 l- H- B5 D* g
        }
; s5 y2 N- I3 N6 M7 s% X/ t) b1 A}
9 N# q+ d( C- A1 g/ k- ?
  t/ C9 R% b0 b3 n$ [7 n' k+ ypublic class ActionGroupDemo extends SwarmImpl {
% m  O4 h; [$ C4 K0 k) B        ScheduleImpl schedule;: P+ q; l( J  q2 l( j% I' C- V
        ActionGroupImpl actionGroup;0 n. X+ z3 t2 [6 M
        ListImpl list;
$ Q& f, F8 Z! U% A        char Id = 'a';' M' O$ A; @& J/ |

7 r1 z. j0 M# P. S4 x& b. k6 u        ActionGroupDemo(Zone aZone) {
, z9 u( b) O4 i8 u- b                super(aZone);
) Z3 ~% r& V" R2 x. i  K* u8 r! h' N                list = new ListImpl(aZone);
  A4 E# b  a% T: H" @, F; Q                swarmSetp();
: n( T! O$ k9 w                actionGroup = new ActionGroupImpl(aZone);3 J6 D6 Q: u' a  F( s
                schedule = new ScheduleImpl(aZone);; a2 |- `* U. W' c  f, ^( D7 O
                try {
$ b7 `# q# Y$ e, W6 p6 x3 A' e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- r5 C$ `5 R' R: a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 \0 z9 B7 @# A* ]8 J; B1 v. e                        9 C$ N# [7 i3 V( a6 b1 c" t& O
                        actionGroup.createActionForEach$message(list, agentSel);
/ N4 t( G) u! {4 `' h; Q                        actionGroup.createActionTo$message(this, swarmSel);$ V* j; v0 Q5 ~, @& K
                        schedule.at$createAction(0, actionGroup);# @) M$ b4 \% P1 f  V
                        schedule.at$createAction(1, actionGroup);. a0 M, \# T2 Y8 E4 g3 z  b
                        schedule.at$createAction(2, actionGroup);9 y. r: q5 W0 l
3 ~7 r9 ^" N' `, S
                } catch (Exception e) {+ _/ r0 z, Y9 Z+ ^9 c
                        e.printStackTrace(System.err);
# _: B  E7 }6 a- s8 e  P$ N2 j1 U                        //System.out.println(e);
( S" Q$ v7 P( @: Y                        System.exit(1);
& \; h! C6 z3 B                }
' Q" o. R: O  s$ H% D, T
/ t3 ]. i+ W6 V( h: ?2 {/ ?+ t6 k$ s, j2 a/ u0 A' o
        }
1 L0 M* D! C4 Y$ w, }0 X; K4 s' n7 X  k/ n* }% C
        private void swarmSetp() {3 s. y# R" [- c' w: g' e
                list.addLast(new Agent(Id));2 u9 k& k  P/ c0 j, o; h
                Id++;
4 o$ Q7 \+ i) p8 ~" K2 Z( @' W        }
. Q1 o% _+ }1 W' q
7 v$ G" p( N/ T9 O; d7 T+ B$ N; e; K        public Activity activateIn(Swarm context) {
6 o8 g0 S" c0 U- e% [! b% z$ a7 R                super.activateIn(context);
$ c9 w9 }8 ^8 s                schedule.activateIn(this);
4 }3 ^) ]. l- N$ W# {* R9 Z: L                return getActivity();, {4 o9 t) o: n* K+ i
        }9 I; s: g1 P# N% H9 m
  ~9 S. L4 a/ |. V/ j" z
        public static void main(String[] args) {
9 U5 [5 }, G/ h/ P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* E$ c7 \+ E' G, u/ o4 M* w4 q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ L3 @! u5 D) o
                swarms.buildObjects();
, w3 H% P* y8 n- i3 |- V+ ]                swarms.buildActions();% J5 Q* x# }) A1 c+ s( [6 m
                swarms.activateIn(null).run();: ~1 o0 ~/ J" y+ Q1 d3 Z
        }
; X, A4 d" ^8 ]+ o8 E$ ]  U' l- ?: \6 e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-16 16:14 , Processed in 0.014828 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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