设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7088|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % B" Z" Q) m7 w) j

5 l  \3 e/ w! i% m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 q4 m3 [. S0 }& X" z$ _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 F; L8 _; f" w# Vswarm.SignatureNotFoundException
* D4 e3 X( u5 P/ F1 @7 d        at swarm.Selector.<init>(Selector.java:76)4 b6 N+ q, H$ j/ M5 p# U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) h( l* e1 s( w& r        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* M0 Z" M' `" i$ C' g' h1 D3 c
( g2 U: W9 O4 s: R8 Y3 N* r' {" b2 a0 }; p8 D8 j' ^
import swarm.objectbase.SwarmImpl;- Q8 l2 ]/ a2 {
import swarm.objectbase.Swarm;
! X. o4 }! N5 Z7 s  c$ R. oimport swarm.activity.ScheduleImpl;
. J  y# U7 W4 m& p5 kimport swarm.activity.Activity;0 L" ~0 r0 O% F
import swarm.activity.ActionGroupImpl;
( L3 W$ p* j/ Cimport swarm.collections.ListImpl;
% q' K! i. i: w7 J+ B, ~1 W. Mimport swarm.defobj.Zone; 4 U% a! A' p8 P4 B( |0 R: }% l
import swarm.Globals;
% _# T% r  d8 W4 gimport swarm.Selector;
" O$ ^6 n+ @8 Y8 Gimport swarm.activity.ActionGroup;
) K+ Z$ |' m4 {9 |8 h; n1 \class Agent {
. W4 z. M! @' M  M0 Q        char id;! m+ o' l) j, g& D: ^  M0 b

% r* n4 A- R4 X, d        Agent(char id) {; b, A" @+ _2 d8 v% b% a9 i
                this.id = id;% c! }8 q3 m% Q* v# C* [
        }2 R0 W+ f0 w' C7 L1 b
: h9 ^% P5 X1 j" h
        public void agentStep() {
1 l. ?/ w" M: q; r, M                System.out.println(id + ":" + Globals.env.getCurrentTime());& Q  T1 F- y8 B. d, S. J" }
        }0 w) X+ v8 ?+ p9 i7 @8 l5 a. {, H$ z
}' j( i/ u8 }3 F# z! y

6 J. D% b* A- x8 E$ bpublic class ActionGroupDemo extends SwarmImpl {
2 Q3 q3 e4 E+ A; X$ C        ScheduleImpl schedule;
  j" q7 r' X' H( K- T" G/ N        ActionGroupImpl actionGroup;
' }0 D- x6 T% \. I        ListImpl list;) \# r1 `# @- H
        char Id = 'a';" x. X( X" i& T/ E, M. b

; @! b7 ]; Z. N+ r$ j; u- @        ActionGroupDemo(Zone aZone) {- }6 [9 {2 [' ~8 K" Y7 N$ b/ p
                super(aZone);$ k# F# W9 |# H' N) s
                list = new ListImpl(aZone);& D  P! Z' R1 g, l, ^% t
                swarmSetp();2 M  o; L: j: b% }& w3 D% n
                actionGroup = new ActionGroupImpl(aZone);
2 _, w# C& `( @6 J- [                schedule = new ScheduleImpl(aZone);
  P$ Q/ b; V) U6 M7 M5 F* U/ k; u                try {
" ]3 ~; q2 g9 ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- D: U6 f$ F9 V+ k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  B6 d8 |; a' t5 v% i
                        + o; C; _) [4 f$ d
                        actionGroup.createActionForEach$message(list, agentSel);- n$ R1 ^5 ]9 D* I3 G, w8 k; b
                        actionGroup.createActionTo$message(this, swarmSel);3 ^. i- P4 \6 F4 T
                        schedule.at$createAction(0, actionGroup);( U* L2 C9 ^+ l6 D* m
                        schedule.at$createAction(1, actionGroup);
# [( k% e6 U* T* e                        schedule.at$createAction(2, actionGroup);0 j  @2 a8 Q& K3 y
  `3 C4 j2 h; w) I9 W
                } catch (Exception e) {
: N& V! h7 L+ H" k& W5 q7 J* R                        e.printStackTrace(System.err);( O. o1 c* O0 b* j7 a9 L
                        //System.out.println(e);, f- f4 Q% X5 M4 b* ^& [: }
                        System.exit(1);
6 Z; p& Y. z( H  p6 N                }
# k  I: |1 z# C* l* x9 M
5 c! \- t$ j: `2 T4 P$ |3 X7 z4 t$ b* K3 L* A# y& G7 W; Q( \
        }
5 b* Q, _7 b+ y
3 u! L) ]- i- |; `        private void swarmSetp() {
: @" G' e7 ~+ p2 v                list.addLast(new Agent(Id));
4 N% z5 @0 d2 G; A                Id++;
: r! l2 w: }4 j/ |3 Q" \& e/ b        }
0 f( s% h  a0 ~) f9 K+ A
6 _1 P* f. i6 _- N9 Y        public Activity activateIn(Swarm context) {
- h* Z! \8 A" ?, J& a. @                super.activateIn(context);
9 }1 G5 \+ }9 C$ \                schedule.activateIn(this);+ r( T. b, j9 j- I7 z
                return getActivity();/ l" _) Z% f+ u# O; i3 E
        }
4 g! R5 \  {7 S; E. J1 ]! k6 J. g9 W1 x5 U
        public static void main(String[] args) {0 B9 n' T' L" I1 a& J0 r( k- B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: @7 {/ k8 \$ J7 ^/ @: i% G! @$ k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 E! `8 f3 n0 q3 h9 t% ?5 B5 I
                swarms.buildObjects();$ L! O; o6 X6 |
                swarms.buildActions();0 x/ o0 C& D$ ^3 j7 @2 V( u; J
                swarms.activateIn(null).run();
) T6 e" Y  G* _        }
3 B$ C( v9 [2 H5 G/ Q3 q8 I0 w* \$ R- {4 V* f3 ^$ E8 t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-19 00:47 , Processed in 0.015222 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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