设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7281|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" G7 I! I% R0 n( S
- o+ z$ Y7 D! J' k5 B, r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 A* r( D4 ]4 A4 ^2 n2 w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. z4 @6 o4 B' L6 i5 D
swarm.SignatureNotFoundException
7 _1 h1 w  N* D        at swarm.Selector.<init>(Selector.java:76)
$ D2 m( {8 u& \) v( r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' ?8 G. @# e& l3 e/ O        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ c& b5 {0 A1 ?
- w4 ?) S# w3 P& M! q  v+ }( o

1 w4 Y4 G  S/ P" M/ {& Z  z+ U# t+ pimport swarm.objectbase.SwarmImpl;
  k8 H# o. t, |% o6 kimport swarm.objectbase.Swarm;, m- S+ N, W9 q/ |
import swarm.activity.ScheduleImpl;
/ L) X/ \, Z: R$ @import swarm.activity.Activity;
$ x9 H. t3 o! A" c4 Iimport swarm.activity.ActionGroupImpl;' Y3 l7 T! U% D7 G; c* z# Q! E/ c3 v
import swarm.collections.ListImpl;" m& X7 r$ n, v* n# {6 A- m
import swarm.defobj.Zone; 9 }% `) \9 U( H6 n( E. S5 m
import swarm.Globals;
1 ~2 l7 D: ]2 S6 kimport swarm.Selector;
- }& \$ p8 h2 x  ^( H1 H. O; ?import swarm.activity.ActionGroup; 5 P+ r" j% V4 }4 V6 D# t; f
class Agent {: a2 t0 P1 K% c  P! Y9 T
        char id;
* ~, Q3 U. H/ {4 @9 c; @: L! d. d$ f4 c7 p( V
        Agent(char id) {: r1 k4 I/ ^. u: F8 i) O2 q# p
                this.id = id;$ h6 w+ w) l/ s! g9 g4 Z
        }8 v0 T/ K# o' E8 R

) b6 b6 q) @) s# {' S        public void agentStep() {
7 ]+ `: n2 e, p4 d+ \                System.out.println(id + ":" + Globals.env.getCurrentTime());2 h# i) p% a" A' x
        }- D: H8 E/ o% e3 p& V6 c
}
  J3 t4 E: a# v. L  P, k9 r: O* Z. N( s5 d5 |. V
public class ActionGroupDemo extends SwarmImpl {4 C! W5 `6 h) |  G. e7 y+ t
        ScheduleImpl schedule;
1 E6 ]" W1 M/ V. H- Y: B  R9 X        ActionGroupImpl actionGroup;/ x9 p1 H" z9 S" N* E- q. G; Y
        ListImpl list;
: k1 i$ q( Z( L  G        char Id = 'a';
1 i; o' E! L0 h( o
' `/ }$ c4 F7 w. g! S) t1 z        ActionGroupDemo(Zone aZone) {1 E, d; a$ q' Q; l+ x# B+ T
                super(aZone);% f3 |% z# A  m8 X
                list = new ListImpl(aZone);% m( K* m$ z& {
                swarmSetp();% v8 c2 a1 v. M0 f3 m9 {
                actionGroup = new ActionGroupImpl(aZone);9 Z, n: Q9 ~$ ~
                schedule = new ScheduleImpl(aZone);
- Q+ O; q2 s+ b, Z0 k                try {
% z/ h9 {* G  ^% J5 e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ B! f3 ]) Y+ B  U) r                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 w) K6 ]9 ^, P, w                        % B& {  `# ?6 T- D7 m, B! O
                        actionGroup.createActionForEach$message(list, agentSel);
3 x, I0 g& V4 O- Z                        actionGroup.createActionTo$message(this, swarmSel);$ P6 W# p* Z- t  b
                        schedule.at$createAction(0, actionGroup);
% s; _) f8 ]% I( y$ h4 d0 X6 R                        schedule.at$createAction(1, actionGroup);
0 T+ t4 @( M% R# Y$ }- Q                        schedule.at$createAction(2, actionGroup);/ ~! r% h) U" N+ i7 r

& V; ^* L  @9 ^                } catch (Exception e) {+ Q% V4 r  v- J8 t
                        e.printStackTrace(System.err);! o  c, D# m' r. _3 s( E
                        //System.out.println(e);
$ E' O& M" u( k0 L' r5 k& u6 z                        System.exit(1);
( W7 n7 A( J; D1 W                }
0 _0 ]. a) h% H# l$ w6 P: p" U3 b: M+ E4 V3 U: z4 ~0 m% t

5 L( D6 {: k( \0 s: R. f% i        }. w% R2 x; j) z# f2 R; K

8 B2 o) t% U' H/ z3 A* A        private void swarmSetp() {- g* G1 b4 c+ F' W- K9 w, I8 \
                list.addLast(new Agent(Id));6 j5 L  N& H' g
                Id++;8 q9 s4 V% W( C1 b
        }& v2 i2 v: g8 j$ s$ ]+ d) I

/ i+ b1 i$ C  \9 z        public Activity activateIn(Swarm context) {5 q9 D& H0 y) [7 y
                super.activateIn(context);
: Y8 \7 ~( x% |                schedule.activateIn(this);1 Z7 _& ~% d( T/ O: O* m  L
                return getActivity();
( i& q; E& D; N        }) I2 [/ U/ C, _4 a/ ^( I
* H! _6 E+ }. L/ q- e# H
        public static void main(String[] args) {* P' U* g: H3 S/ r3 ?
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 W$ u! D% ?3 B0 j8 O% l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 W4 p) ^: i& J# U8 a  C6 b0 P, a7 ?
                swarms.buildObjects();0 r) V. V1 s; A7 a& V
                swarms.buildActions();
: P4 G# ]5 \) [                swarms.activateIn(null).run();/ U6 ?. ]2 _5 e6 k) t. T) d- |
        }
- G4 _, p0 S! C) _: x' a9 l
3 a+ }2 o% u, Q  H) p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-25 07:15 , Processed in 0.018219 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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