设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6689|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( c' ]; f/ A- Q( [: |; s' R. O# G2 A1 s& E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 G' ~2 R' ~% L. P: p/ ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, p! c6 B) H) F0 H5 l0 dswarm.SignatureNotFoundException- V7 K2 N& N" R: w+ k# K
        at swarm.Selector.<init>(Selector.java:76)
/ S+ M  U! e# r7 h& _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' I9 X) `# Z% L
        at ActionGroupDemo.main(ActionGroupDemo.java:67). x, S* h* `$ y/ W5 n0 r

( e6 u" F8 o: Z. S2 @( P. i; O: L' G# t
import swarm.objectbase.SwarmImpl;
6 ]4 s% z. x) ^1 W: u. i- c; bimport swarm.objectbase.Swarm;
' l2 b: a( |+ |1 ^. bimport swarm.activity.ScheduleImpl;
$ I9 `, p; V3 `, ?import swarm.activity.Activity;5 T9 ^5 V+ I+ C# W) b
import swarm.activity.ActionGroupImpl;
6 ^2 Z- O, j2 r& f- |- N0 Qimport swarm.collections.ListImpl;
" H6 \$ Q3 S2 V( a6 Pimport swarm.defobj.Zone; 5 i% O  u2 ^1 k* @- M; g( X
import swarm.Globals;
- Y& ~0 u% S; E; M: {4 Kimport swarm.Selector;! X& G: W& G4 e$ [9 J. T+ _
import swarm.activity.ActionGroup;
- L  }. P# l- e1 cclass Agent {8 _8 N/ C4 o) o5 u( S% R
        char id;
6 A# w; S; N9 O# O
1 X2 f8 r, r5 {! _6 S        Agent(char id) {) H7 V6 O$ a9 e1 _* T! ?& Y
                this.id = id;! \4 u/ q- C7 M& P+ k3 ?. g. q. ^' P5 d
        }7 q" r6 ~' v" ]8 A

$ q% }# Q" {+ u3 `; u        public void agentStep() {
+ k4 D  A4 H. K0 n$ y7 |" a$ E                System.out.println(id + ":" + Globals.env.getCurrentTime());2 U5 t# k9 C1 R" J
        }' H3 h; o7 J, u$ Y( t, J) b- a, @
}! H) h; O5 n* i, w4 V
8 T; K3 l4 d0 q  k- @. r
public class ActionGroupDemo extends SwarmImpl {' Z5 B+ Y; j1 E3 Y" y/ |; s8 o" a
        ScheduleImpl schedule;% r( V' B* M+ s1 A
        ActionGroupImpl actionGroup;, x: ^8 p) q8 a; |) o
        ListImpl list;
8 N  g' t$ t2 z5 [- T  A3 _6 N        char Id = 'a';
. t: W5 g  ]8 f8 d$ l  d! ^& z. f
        ActionGroupDemo(Zone aZone) {) z+ x# J/ O; f' Y8 d
                super(aZone);
) L. X( \$ i. ^# a9 V2 o                list = new ListImpl(aZone);& f* N" W$ Y3 @) x
                swarmSetp();% O9 ?4 j$ P9 h8 S) c5 K4 U$ K
                actionGroup = new ActionGroupImpl(aZone);
( u( J; s! r: h# O7 n" q, \6 \                schedule = new ScheduleImpl(aZone);1 l# P2 W* g1 E3 h% T7 f
                try {
4 q, I$ E7 O$ i/ c) e# c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) V+ i% `3 K: w! w$ C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. m8 M8 N/ q* ]. j4 n
                        
. m( P; U* l# n! S                        actionGroup.createActionForEach$message(list, agentSel);- h: w. K/ ~& ^# t
                        actionGroup.createActionTo$message(this, swarmSel);/ W% O& `+ y) j& J9 a) M
                        schedule.at$createAction(0, actionGroup);: h, Z5 l4 l' A% i$ V4 @
                        schedule.at$createAction(1, actionGroup);
  w2 H0 ~& `4 E' O9 w$ V) z                        schedule.at$createAction(2, actionGroup);' o1 l2 d3 G  G! E2 m) \' _

! w' i6 j& O+ N+ w$ Y0 k% n                } catch (Exception e) {; I4 t4 F4 O+ o
                        e.printStackTrace(System.err);
% Y- \4 V' M$ ]                        //System.out.println(e);( u: p1 h. y) P# n8 W- I
                        System.exit(1);
* K) X% M  l+ ^( \                }" g6 ~0 R1 J3 l8 `9 I

/ Y' H) ~% I: w0 _  i5 K" s
5 K, L1 X( [/ z  N        }
, m& h( m4 l6 y* c
$ j; Z6 ^! e! k5 O        private void swarmSetp() {" s/ w+ v( I6 J# M
                list.addLast(new Agent(Id));+ O! P. X" i3 [$ i
                Id++;
5 j/ [9 a8 ~, W8 O! n. [        }
( ^( G% Y/ h( m. D4 W( l) x
/ ^0 D0 Y1 o6 ?% i% l        public Activity activateIn(Swarm context) {
; u- ?; ]6 g2 I( i0 ]$ a. h; L6 Z                super.activateIn(context);
0 S3 C' A/ R" ~/ q- @# W                schedule.activateIn(this);/ r5 T2 _2 s" l: s
                return getActivity();! @5 t- H! i$ x7 p# }% V8 ]0 ]
        }2 {$ s# J; C. ^3 w9 X% R6 H
4 b( D9 a) W* g& a6 A
        public static void main(String[] args) {
9 v6 i0 h4 t. V4 y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- n# C2 M5 L' Q" [4 N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 V% K1 i8 B0 c( Z( j; z% k) D1 }
                swarms.buildObjects();  G+ q8 r# y: q0 i
                swarms.buildActions();+ h3 u% }: A' O# E0 y* M3 w
                swarms.activateIn(null).run();" O" [1 G& [5 H0 c
        }5 @( d" T1 U- ^! ^: j* Z, M0 ~
$ d7 j$ u# r+ }0 S; ^1 S5 @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-5 19:49 , Processed in 0.014522 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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