设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8510|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 O. y. V0 e# p5 Q
7 d6 R& g7 e! \9 u" \* d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ S) g' L+ x3 @4 s3 E8 e& j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% m5 j9 ^0 d& a( s1 Z. `2 Mswarm.SignatureNotFoundException
, e9 w. ]) U4 y, j% A        at swarm.Selector.<init>(Selector.java:76)
: p- [# o2 H, \( {9 l        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 V! X1 `8 `( H& L9 V9 {3 g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 r( L  }+ p2 S7 q; w

5 m$ u9 O& @2 D$ d" B) g$ b
. E4 B% r( J3 u; e) cimport swarm.objectbase.SwarmImpl;
5 P8 K  O9 I( O7 u- ?; ~import swarm.objectbase.Swarm;& @$ s4 C6 D0 b- ]3 l$ Q, y
import swarm.activity.ScheduleImpl;, y, z. a, A% |- P0 {0 i0 f
import swarm.activity.Activity;
5 l  b% D6 }$ D5 L3 f1 B, Q# @import swarm.activity.ActionGroupImpl;" q! P% W4 g, @0 w, S+ X0 V2 C
import swarm.collections.ListImpl;2 U" @0 I! v  h, ]! y6 j
import swarm.defobj.Zone; " s& }- y' n+ }" h
import swarm.Globals;6 w# W! X. g6 A# ?; [. e
import swarm.Selector;; z. `+ e$ W7 u* }
import swarm.activity.ActionGroup; - @. C9 X) r5 G% s/ P- V& {
class Agent {
1 Y' }( Y. b3 ^) |+ s/ V9 i: q. u        char id;
& _) i, r3 k+ R/ O
" B: y$ V7 m: }( R7 F2 u        Agent(char id) {
, a8 u0 g7 ]* B  t                this.id = id;
' Z% q: L( T- F* ]# ]0 r9 L        }! Q# e8 q  S7 v9 A, _5 H3 U

; u: B3 ^+ y4 A, B# z        public void agentStep() {
( \. f2 w9 [7 A% a8 ]! K0 ?                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 ]- T3 d; u( [        }) B; j; Y' \' u. Z! d. }$ b
}8 E; F1 v7 y5 X8 G  Z

- o- P7 O+ h$ e; ~' O% d  D$ Npublic class ActionGroupDemo extends SwarmImpl {
  y1 u0 O, P. X/ r+ f" O        ScheduleImpl schedule;
0 ]4 q! z0 }& p/ X! d* C' o3 f        ActionGroupImpl actionGroup;9 ^) O8 R+ n( Y% H
        ListImpl list;
2 }7 W. _; o/ ^6 }( G/ L. q9 ]        char Id = 'a';
1 t: o: h: y' u% m$ M: r: Z# P; K, O0 K
        ActionGroupDemo(Zone aZone) {+ }( n8 T) y8 f- `! T
                super(aZone);
+ O: g) W2 q3 q3 G9 g0 K) {                list = new ListImpl(aZone);
/ _/ s5 F* H+ k. H; Q; _                swarmSetp();
) `7 c6 V# w* l" o' G                actionGroup = new ActionGroupImpl(aZone);8 I0 Y: @+ ]% g, X4 G/ {1 ?' Q
                schedule = new ScheduleImpl(aZone);
, A, b. k1 G3 v" o5 \7 K9 @                try {, A0 r4 m3 V+ @; k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. j5 a  w& S% u# Z5 E) t5 N( M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* q, Q( v: }. S& R, |% d; t" d                        
0 Z- a* |+ z& C3 u( U                        actionGroup.createActionForEach$message(list, agentSel);( m7 c0 _) C6 h* b
                        actionGroup.createActionTo$message(this, swarmSel);
+ f9 Y$ w4 O& k+ Y! c' _* y                        schedule.at$createAction(0, actionGroup);
# o. l6 @5 N7 W& K1 j                        schedule.at$createAction(1, actionGroup);
+ F- A1 u- [8 i: R                        schedule.at$createAction(2, actionGroup);
) T% f, M  q& s, v$ |+ c0 z. x8 L! a0 O; d( Q( e7 @
                } catch (Exception e) {
8 m  O) M( S6 P* J                        e.printStackTrace(System.err);
6 \5 C- c# t/ V; u$ ]+ ~                        //System.out.println(e);  M9 M2 \: G- w2 P9 h7 `4 i
                        System.exit(1);
) `6 c* x1 x6 R/ F4 P# Z                }9 O1 m: b( }$ O1 v

: T, e; M( o! g3 \' T+ _% \0 ~; m2 q7 F$ A; ~$ p3 t( O5 [
        }* q6 J! s$ \5 N3 M" n
8 `! @7 @/ q0 z6 X/ m2 v
        private void swarmSetp() {
0 Y0 v7 K$ J( f1 a3 }4 Q9 b4 Z/ n                list.addLast(new Agent(Id));
" S) |7 @2 \3 q9 F% l1 C- F& `                Id++;
4 B) B  V5 ]: P- s* `        }+ f* b3 ]8 {/ }3 O

4 d8 M# d4 u/ X2 q, |9 ]6 `2 e        public Activity activateIn(Swarm context) {- o( ?7 @0 Y* r/ U
                super.activateIn(context);5 C" ?5 @9 u6 D; n
                schedule.activateIn(this);
( |9 U- [9 O- P  a7 S" ?                return getActivity();
7 m- f1 G; J0 d2 g7 V        }8 ^$ Y& a% v( a$ [$ t
4 N$ h8 a  \* B  w: Z
        public static void main(String[] args) {
0 [% S* y3 I1 `( \( a6 D& a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: |9 F% {: i0 m7 l; F3 e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* a/ ~2 Q! f$ b+ |
                swarms.buildObjects();7 A& }) d. v7 b' z6 U! D
                swarms.buildActions();  r. e, m0 B: J3 a% d" p
                swarms.activateIn(null).run();! z7 ]7 C( A1 Z
        }3 P" b; x$ ^+ Q3 N
/ K5 ~& g. n7 r0 b) J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-14 22:53 , Processed in 0.015340 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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