设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13274|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ h, u; u# x) }5 a
+ w, u4 M3 \- k0 L9 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- t, f6 V7 e/ f' O! N. G. j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 ~+ h" \6 v( Y5 e% r
swarm.SignatureNotFoundException
7 _8 q8 J5 C* X4 z        at swarm.Selector.<init>(Selector.java:76); F5 e# z9 F( K% @: s& C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 L- W- M7 |2 b9 i- ~; x4 |        at ActionGroupDemo.main(ActionGroupDemo.java:67). E- r+ W3 q% s6 f2 E! J! Y0 \
: t# G0 P2 u  W6 i5 _
2 Y; X1 R( `5 W' X* y7 B
import swarm.objectbase.SwarmImpl;+ p+ S( S' D& E
import swarm.objectbase.Swarm;
/ G" [+ j4 f) [7 _( d- ?import swarm.activity.ScheduleImpl;9 `# K) D- f- h: Y9 l. r
import swarm.activity.Activity;8 L" h- r, q; u5 a0 ?# F. O
import swarm.activity.ActionGroupImpl;: {9 Y/ R' s# g6 ?3 r; j, {
import swarm.collections.ListImpl;3 s5 T/ P! G* n8 W
import swarm.defobj.Zone; 3 P6 R; s% y" }: r" e- \
import swarm.Globals;
8 {. N& u8 H1 X. T( uimport swarm.Selector;
: k1 _0 B/ g. G1 M& Rimport swarm.activity.ActionGroup; 9 o* n4 _. t4 Y/ O+ s* q
class Agent {' z: s, p; v4 E4 Z
        char id;
8 z0 r, }& m* [" z4 K4 F) V: L2 v9 z( t" ~7 E
        Agent(char id) {
2 P# ]7 T3 d9 G) G1 o2 k                this.id = id;
7 n* S- B( u& c& ^4 i        }4 a, b& `% m* x) x

4 v& U5 [8 _' D; j        public void agentStep() {
$ w; N) d/ a3 ]3 S7 K5 M                System.out.println(id + ":" + Globals.env.getCurrentTime());  U% j. x* U  K$ i
        }  ]' f) A" h# C8 ~) C- V
}7 n0 r; \* t. X- B

# ~' r* t! P* d: U5 f7 Gpublic class ActionGroupDemo extends SwarmImpl {
6 [  F' U( j% v, B; P! @        ScheduleImpl schedule;
! y  @  J" l1 w5 v5 ?& L        ActionGroupImpl actionGroup;
' w! v0 `4 }9 r        ListImpl list;
3 H- }! i$ ~1 t' }5 c        char Id = 'a';& @  ~9 w, ]" e5 I
% H7 r6 K/ Z- u2 f* C/ e- u
        ActionGroupDemo(Zone aZone) {
2 R+ e4 N; b- |; N3 K' b1 j                super(aZone);  n) N; G$ ~; M6 e8 X* m+ q
                list = new ListImpl(aZone);
! ]! ]6 _0 K6 {# X  \- {; T                swarmSetp();# S' g) g) F4 q- V/ V8 u) N. T& Y
                actionGroup = new ActionGroupImpl(aZone);
4 o; D- n2 `) B7 O* D3 ]                schedule = new ScheduleImpl(aZone);
) P; T$ O& _9 d6 v2 }                try {4 c$ g; w) K, _( m5 q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" W. V6 t" h! G( m. d8 L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ O: j, a7 K: Q0 r                        
  @- v9 M) B% y7 P) v) H) b- P                        actionGroup.createActionForEach$message(list, agentSel);
7 a7 h4 W5 H* d, D2 h9 E) n' F) E( r                        actionGroup.createActionTo$message(this, swarmSel);
& |- |, D0 ?! x+ }# O                        schedule.at$createAction(0, actionGroup);
) Z( _! k8 t2 R8 e; T: Q3 J                        schedule.at$createAction(1, actionGroup);" \- K, D, o. _
                        schedule.at$createAction(2, actionGroup);* l- {$ S$ v- K: U4 v# Y! l' w

% j! J( }$ T  F. K3 k6 y                } catch (Exception e) {7 K5 P! [6 D# ~  j# e$ ~2 Z
                        e.printStackTrace(System.err);
. [# @* N' I& L7 r$ K" W                        //System.out.println(e);( [# K( a( _: ^) ]
                        System.exit(1);
) @5 ]  o. \$ G0 ?- [$ R: w                }4 W$ I' h' g/ {7 W
) y% t$ X* v; ~4 D/ O$ |' i

3 K7 f" z' i( j, a# t        }; x  L% Y  q6 `; h5 c/ }

  K4 c$ M9 H: l7 A+ Z        private void swarmSetp() {4 t: Q% c8 y/ T
                list.addLast(new Agent(Id));) A, S6 I6 g7 e: Y5 \8 V
                Id++;
. `/ h3 R% j, a5 _3 C        }
/ d1 y$ m7 L7 C# _' n' z
7 S! _8 A* x  G1 ^* A6 Z$ Q! B* v        public Activity activateIn(Swarm context) {
' H# Z7 j$ [. ~                super.activateIn(context);
/ j( h2 X- {3 @                schedule.activateIn(this);
2 W+ U, ^, e7 O3 p  R7 g                return getActivity();$ F5 o% q+ G3 E$ \
        }
& I. C& |9 L% W  h0 l; S3 ]2 c8 U# J% n4 t/ ~8 h1 Y6 E
        public static void main(String[] args) {
5 Z: }- u: V2 c8 ]5 j                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 s6 l/ x6 o) e" S" \+ `) v! l3 X; Z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 u4 y) N9 S* d: a( |) C
                swarms.buildObjects();9 Y; R& N- k; B. L3 J, w
                swarms.buildActions();$ b6 l% h6 i; G3 B+ Z9 b
                swarms.activateIn(null).run();( J5 z+ i9 \4 e7 P9 \  m6 ?
        }
" N* {5 R4 _- c( }7 x7 {3 G1 B/ y# _; |% [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 14:16 , Processed in 0.017242 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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