设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8695|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' D( r- }; ?- ]) P9 z+ k
+ `' z1 P* S2 O# Z1 d1 O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 G# y9 T: y1 u6 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 Y7 q; }; i6 M& t5 E
swarm.SignatureNotFoundException- p$ s* Y: X+ I
        at swarm.Selector.<init>(Selector.java:76)
7 C% R5 i9 [% O* e5 ^1 H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 T" g" e9 h9 p' {        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 y; V- ^2 [- k/ O6 o+ Q8 J! A
; U' l, h( g% f! h# r( s* d+ r( Y5 m! G! v
import swarm.objectbase.SwarmImpl;* ?- j7 n. i1 y' C" I: V
import swarm.objectbase.Swarm;+ n1 y5 V4 Q/ U, O7 P  V1 I5 h! N
import swarm.activity.ScheduleImpl;
# v4 g+ `$ _" t' g- }/ ]* Vimport swarm.activity.Activity;
- k/ N2 [/ f$ v6 |' V- m$ fimport swarm.activity.ActionGroupImpl;' [5 S* R# B0 W/ g
import swarm.collections.ListImpl;
2 \& c. Y/ v& dimport swarm.defobj.Zone; & i( V" L1 z) Y$ E
import swarm.Globals;5 E5 g! i( a( Z- L+ u
import swarm.Selector;
( ^2 Z0 E; Z. ]* N' J8 z" j9 L5 Dimport swarm.activity.ActionGroup; , L6 V- X4 `' Z8 U/ w% b
class Agent {( }- K* J9 D6 N8 c( k
        char id;
4 H  Y5 P- T2 x0 w( U. v9 A7 b# _2 |
        Agent(char id) {# ]1 m# ?. s4 m8 D' x2 f( U
                this.id = id;
# r3 y4 p- r; Y" r        }
, M2 ^1 K9 D8 o. ^% L2 ]
  O9 p8 c* r: P! l5 F- b2 s        public void agentStep() {
( z2 U9 y, O& v2 G- G6 j4 J                System.out.println(id + ":" + Globals.env.getCurrentTime());/ L' C8 W4 k6 v8 t; S4 L% n6 B5 G# s
        }, |) J0 X0 L# y8 i
}
0 ^* o2 e% x9 V. o: J" M& d
$ D+ M+ P" v; C. Zpublic class ActionGroupDemo extends SwarmImpl {, C0 o- a4 `% k, J# D
        ScheduleImpl schedule;; g8 A8 S- }( [8 E
        ActionGroupImpl actionGroup;0 _8 a3 y: Y2 C6 w# W& @! }5 N
        ListImpl list;
1 ^; E( N4 p( E* \) g* V* G1 j        char Id = 'a';
. H5 D+ H$ v: ^5 G+ o7 h3 Z* [/ n( c. F( z
        ActionGroupDemo(Zone aZone) {
8 l5 ~/ ]9 y# ]5 p                super(aZone);0 a3 _5 G* Q7 S3 j! l% |( i
                list = new ListImpl(aZone);
, g" O, Z* j* k5 Y: ?                swarmSetp();1 O  u8 W9 e. N) h, X2 _1 w" J
                actionGroup = new ActionGroupImpl(aZone);7 M) a- ]8 D7 \
                schedule = new ScheduleImpl(aZone);
0 f) R4 k9 ]+ c* f. s                try {/ s6 a6 W& K4 d4 z& c; [; |) l  L
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 ^+ V4 K/ t  l; W  o  B" V6 h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  O! m. |% z) x$ N- c) z5 H6 H                        ) f4 `5 _- x/ [+ k4 V
                        actionGroup.createActionForEach$message(list, agentSel);7 u" x8 r5 J; V  T; ^$ Y
                        actionGroup.createActionTo$message(this, swarmSel);; D0 s" s0 i, K$ o) M3 I
                        schedule.at$createAction(0, actionGroup);
- _; C/ @; Y8 \& Q( P) |- X                        schedule.at$createAction(1, actionGroup);: H9 T) ~0 x. ]0 q" I, i( T( E
                        schedule.at$createAction(2, actionGroup);1 T5 R" R' J" t6 R2 u

, {/ Q5 h; a6 t% ]! f2 j                } catch (Exception e) {
0 x  ]4 E6 [0 ]; k                        e.printStackTrace(System.err);
" E4 {( |) Q4 U) I2 K& X' I                        //System.out.println(e);, b4 a2 ^# Y& m
                        System.exit(1);( n. z. \& y- H' W- ^! G
                }4 q% c2 `0 Q/ C- |6 j5 a) K: Q

! H1 P6 @0 `; j- Z
4 m4 f/ T$ D: d        }
+ V4 N6 j  E+ W+ Q: Z; u! ^+ W: h
9 _  n0 ^& ?2 \: P  L$ i, a9 m8 W        private void swarmSetp() {
" R5 Y$ d0 P9 u+ [) r- ]3 H! Y                list.addLast(new Agent(Id));: \7 p9 m4 P6 U. V' s6 K) U8 [
                Id++;5 P7 Z7 i7 f5 K* X0 d' t
        }
0 U' w+ F: G! `, V" R4 `" T  r. N2 `" L
        public Activity activateIn(Swarm context) {  ?0 b2 Q' Y% K$ ~
                super.activateIn(context);+ S# u* o$ k( D3 c4 h( K! _
                schedule.activateIn(this);( f( Q, R, P: E# x) w. D0 Y' H
                return getActivity();
3 z/ A0 T7 A+ N. W! F        }
; \* I+ j& Q/ q; B4 R  t$ c, l) {- _/ m9 j
        public static void main(String[] args) {
2 ~" X: G: R+ H) a  a9 U, ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 G" p5 U6 E7 R7 p3 n$ z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% Y8 l! T9 a$ F' [4 M
                swarms.buildObjects();$ Y3 `2 X5 \$ U2 j1 h1 k' f. t
                swarms.buildActions();
+ i4 C' l, ~0 N                swarms.activateIn(null).run();
, h' C9 q# F, u3 t7 N  m        }/ V3 {2 j5 i% w, h+ w8 y! j1 F

  @3 b, `: J7 b}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-19 22:24 , Processed in 0.022005 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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