设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8795|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; v3 O5 ^: h% @; A; Y9 W1 y
& x6 g( K, B" d) C" D# |, m* j) D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ g8 B% r' C5 E* L1 ]; R2 G& Z9 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 k0 l9 l# s/ ]5 k. E5 c' P
swarm.SignatureNotFoundException/ Z; c# i# K; M; x! L2 H
        at swarm.Selector.<init>(Selector.java:76)1 [" l6 r/ i- g6 @% C: o1 P! O( j* ^/ ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 `. w4 f6 z( q9 h, z- K6 z$ h9 L7 m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) C/ C( Y8 F( D8 ]5 ^& D1 q  g) H4 ]* S# S: _5 d, k

! r8 \  q% d4 Gimport swarm.objectbase.SwarmImpl;
  x! e/ B. X) }; }import swarm.objectbase.Swarm;' T( K0 m4 z; c. L( @
import swarm.activity.ScheduleImpl;
1 p8 C: m) v7 L7 r! Q% Gimport swarm.activity.Activity;
7 K2 g4 C7 T2 }( o7 E( ^" F" j4 Y2 }import swarm.activity.ActionGroupImpl;
- \* a$ l( l$ Qimport swarm.collections.ListImpl;
, @3 |) l7 V8 p2 e$ simport swarm.defobj.Zone;
. j- \, V5 c: M* D+ D3 C+ S. Ximport swarm.Globals;# n+ P3 d0 F3 _9 \% w& `, s1 K) `9 C
import swarm.Selector;0 X8 p; @$ S- S7 I5 r% ?. U
import swarm.activity.ActionGroup;
% K9 U! O( l9 L4 S( e3 eclass Agent {/ Z! v6 @, x  K% G( ^: ?* J
        char id;
& e7 k0 J' f3 n( u+ N  H7 k: m" t) a# W4 {* s/ W  U
        Agent(char id) {
  ^) L+ z. |  Q( V: R1 h7 D                this.id = id;& j; V: w" N& W% I
        }8 M7 _) j; S- k
6 w5 x. }4 v) K- L
        public void agentStep() {0 F' B+ e" F* I6 w2 {3 V
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 J5 W: s. l) U6 B        }# o& U7 P5 S& i0 ?$ P$ X) o8 T" X
}9 _& A: A5 o! m2 h: G7 w

$ q; x* Z3 o& P4 xpublic class ActionGroupDemo extends SwarmImpl {) N1 U1 c8 ]$ A5 m9 M+ t
        ScheduleImpl schedule;
8 y% k+ V6 ~. P" u$ T$ T3 h        ActionGroupImpl actionGroup;
9 b& r, o# V; p4 o7 }4 E        ListImpl list;$ q' a2 V% V. M8 {, a
        char Id = 'a';5 m/ Q% X2 F/ p0 }1 J9 S' U1 C: B
9 J$ N4 r2 T) l* [( [
        ActionGroupDemo(Zone aZone) {
4 u  P' }, E4 ?- a) V                super(aZone);
7 Z0 D5 d! ~# t, }                list = new ListImpl(aZone);) V! J# A! J, \, ^! e0 ~
                swarmSetp();
7 `3 ?: y1 F: I% q6 U                actionGroup = new ActionGroupImpl(aZone);3 Y1 H4 d* l9 u8 [' n, x+ @
                schedule = new ScheduleImpl(aZone);
) J" I& e& v5 t# k: k                try {
3 I, z1 m$ {# P! b' {  f0 M! v                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 t. f6 A. L2 |' Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. g2 Q% [6 H3 j( o6 @                        
0 l; a: C" m' z: H& a                        actionGroup.createActionForEach$message(list, agentSel);+ n: P7 l; Z! \: D) O. J; E
                        actionGroup.createActionTo$message(this, swarmSel);
" F8 {3 W7 V6 N" L% {                        schedule.at$createAction(0, actionGroup);  z$ d, D% l& K$ l2 c
                        schedule.at$createAction(1, actionGroup);
5 O( r. `' E. u& Z3 m                        schedule.at$createAction(2, actionGroup);8 Y6 N4 L7 S8 `4 K: W

0 Z: q& i0 A3 N) k5 |) U                } catch (Exception e) {- u; A' H& t7 G6 J& ]3 T1 Q
                        e.printStackTrace(System.err);, b8 l/ X0 A6 _" C; y! F" |
                        //System.out.println(e);
; n9 @$ @( U8 s2 x6 n1 s- F9 E# C3 {                        System.exit(1);) ?* t9 c$ |8 p) M, V: R  u" M! q
                }
" j5 Y+ z& @5 y. p
7 m4 ^& \) V7 @, @; y4 S* @8 }! w8 o1 v8 }0 r; M, r
        }% h5 j) U) V& |0 f5 a1 ]
+ p/ [  K. G* F& K) h! Z4 U
        private void swarmSetp() {0 n. m0 Y$ o% e, {5 }4 t7 F
                list.addLast(new Agent(Id));  A) d# [8 a! ]4 ~! J% {6 O0 c
                Id++;/ Q- C5 q& y! z' _0 F  W
        }
  _' a( g- k. W5 w2 y4 t6 |  K4 i9 i9 `8 @
        public Activity activateIn(Swarm context) {, P, o- W1 N6 X+ Z7 q
                super.activateIn(context);, R1 i4 r' i' {1 P- v
                schedule.activateIn(this);
9 Z& Y7 c* g( k                return getActivity();
6 [, \* \! K( h; c; {9 ?        }
3 g. N. `3 y; p" Z; `1 q. f6 K! v1 O  i7 `- @% g. {/ m
        public static void main(String[] args) {
. f$ C% L: R3 @( ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% d! n! ^/ O5 l- U0 I1 @2 u
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) V6 p9 J- q9 i! S- Z5 {
                swarms.buildObjects();8 @# g* J, z* V; b
                swarms.buildActions();/ b% e9 G% U- s6 n
                swarms.activateIn(null).run();: E- O# b( ~: A0 E
        }
, V9 K+ Z( Z1 c# l) M5 q6 x% j! N: A' p4 K. |5 I" h5 l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 03:12 , Processed in 0.016120 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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