设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10830|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 L$ x) e) E& p$ Z. Z' m
( V' `4 [) u. j/ C- D5 c( n* S) e0 n. d9 k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ V! @( t* l' x- s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% k- n4 Z! u/ U1 L" @4 U+ ]
swarm.SignatureNotFoundException) e- F( |$ {5 B& H8 P
        at swarm.Selector.<init>(Selector.java:76)
# z' X# g( U2 Y4 e8 \; K/ K' s! Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 d# }% Z. _; d* O1 f; X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; T/ y, v( S: g$ ~. ?" n$ E* T5 r4 \% O& ~0 |& z* j& \

: v# k# R! o; H$ T# ~1 \/ timport swarm.objectbase.SwarmImpl;, x% |" l5 W! ]0 g0 Q% V
import swarm.objectbase.Swarm;
: m+ T3 q! Q) `4 F3 E: Timport swarm.activity.ScheduleImpl;" b1 ^, O6 e- H
import swarm.activity.Activity;
0 O0 s; H  t( v  V6 himport swarm.activity.ActionGroupImpl;8 t( R0 S5 ^: A% h& c; a! U
import swarm.collections.ListImpl;
; I* V0 ^' c/ Q. z9 l% u" |import swarm.defobj.Zone;   `/ o0 M2 U; m/ J- Q
import swarm.Globals;
, c. F& d# o" ?! W; \+ simport swarm.Selector;
" f7 z, q' {7 E. U/ h$ ]7 Gimport swarm.activity.ActionGroup;
  c6 u8 C# J" g2 k, T9 ^class Agent {2 l: F, E4 F" N( T2 P1 L
        char id;: h0 x( g+ |, ~& m7 D
0 t: R- }1 X( B* f+ a: ~
        Agent(char id) {& r# r5 K, T' i, \. `
                this.id = id;' |; M0 g" ^/ R- }6 d4 w5 R- r
        }
3 r: ~0 L* l. O7 W0 m; L
! {4 x% Z0 N9 z4 ~. w8 t' Q3 ~        public void agentStep() {
) R: Q! @5 a6 t- _" f                System.out.println(id + ":" + Globals.env.getCurrentTime());, }: U7 E' N0 p% C; E9 Z, ?$ f
        }5 J- o9 C: X  @
}
; Q# u0 t( `7 }" j) E- F, n
- z1 Z( x% }. ]3 H0 R' G* P; xpublic class ActionGroupDemo extends SwarmImpl {0 r, A7 W$ z1 T; \! l3 T) D  b
        ScheduleImpl schedule;
. f& m5 m# k1 C2 I+ f% r$ o' d        ActionGroupImpl actionGroup;- p( N; x7 |* W3 h, b5 ]6 X% u' l* y
        ListImpl list;
9 L# \# {5 j: `9 c        char Id = 'a';7 u. r  J: _/ z1 u; J( m

4 M; C8 I: T- d6 ^        ActionGroupDemo(Zone aZone) {! |; S/ M8 ^9 d7 I
                super(aZone);
7 g5 i. P" L7 ]  k" `                list = new ListImpl(aZone);
9 G* U2 J' e7 u! ]7 `                swarmSetp();3 F; ~4 f# C, ~- {( Q# ]; Z) s, _
                actionGroup = new ActionGroupImpl(aZone);! U- ^, m0 g6 I8 }2 h7 g% l4 o
                schedule = new ScheduleImpl(aZone);
9 R7 P0 E6 ?1 i6 _9 d5 Z5 ?: v                try {9 c# V3 R; N/ E6 d6 U  m- z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( q* y* `, ?- z5 i4 \" f0 `; E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" p8 Q3 i$ B( F9 X2 R                        
6 c" _" z  \# q) |" v                        actionGroup.createActionForEach$message(list, agentSel);
$ @/ u; ~5 z! q& ^/ @                        actionGroup.createActionTo$message(this, swarmSel);
' ?2 m) y  m& u4 ?; ~                        schedule.at$createAction(0, actionGroup);6 n+ S9 ]- U3 ^" t4 v, C" v
                        schedule.at$createAction(1, actionGroup);# f6 a: f5 ]9 z- B2 L
                        schedule.at$createAction(2, actionGroup);9 ~8 I6 E0 C% J: q* ^! F
, X3 ~& l; j+ u/ {: {) ]
                } catch (Exception e) {
! T' g& T+ K9 t                        e.printStackTrace(System.err);
. W# ?2 {! T8 x% M% S                        //System.out.println(e);# {9 x8 e( l8 n
                        System.exit(1);$ f) n6 G  d+ ]! p! T( X5 |6 L
                }
. y1 p# ^2 a1 Z8 `, N7 _3 `* J. ]7 q2 }

0 J. I' t+ D! ^; o+ @1 h9 a7 }        }
) U/ i1 C- U! j/ E5 _
/ _5 X4 Q; r. b( R( V1 `4 K; X9 Q        private void swarmSetp() {" ?, z- C# R6 l! W; j! \& m- c
                list.addLast(new Agent(Id));
" g. h6 L2 V% h                Id++;7 g6 l* X. P( U1 @# U) U
        }# N6 Q8 q! [. ^1 w  p5 I6 m3 H
" T3 }2 G% N& @- a, }' a  ]9 I
        public Activity activateIn(Swarm context) {0 ~7 {# R3 i# c6 ?: q
                super.activateIn(context);& G7 I! `' C! [. @+ P+ @
                schedule.activateIn(this);( i+ ?/ ]) s  x8 H; N
                return getActivity();
& z, ]7 a* _) h- b; d$ m/ o$ E        }
! f3 {- _1 j: V' R1 m
+ T% F  g2 T; m  U( ?        public static void main(String[] args) {( t  e9 Q6 M. J% Z- j8 {4 q. O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 v3 f9 U  B" f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 I  N* P! l4 B                swarms.buildObjects();
6 ]# n0 x! Z- V1 P! }                swarms.buildActions();6 O+ [$ G: {4 m# E/ r1 z2 w
                swarms.activateIn(null).run();
5 E; x# W. O  x* V% S        }" R0 T' A5 I, \
  k9 a/ r7 K7 }+ q4 \1 h0 W& D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-25 01:08 , Processed in 0.016564 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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