设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7136|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 l/ K, p+ a' S5 D  p- h; Q" {4 R+ @3 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ T% ^) O) f! U  n& w( d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ d/ }" x7 j8 k* j4 N& w4 s$ u: q
swarm.SignatureNotFoundException& ~7 l% w3 N5 C! |' l
        at swarm.Selector.<init>(Selector.java:76)
9 m* U% x7 r" x  [/ S6 q6 H- X( V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); J8 `; V/ h  j% U; G/ x* l6 L
        at ActionGroupDemo.main(ActionGroupDemo.java:67): O/ A' d' i; o& z/ P: e- W. g
* ~$ D+ e1 t" M/ x/ a
2 A( Q) o3 O$ m6 C2 D
import swarm.objectbase.SwarmImpl;1 B2 }& C, q# w& ?  X7 O* ~
import swarm.objectbase.Swarm;
2 Q1 J% u! L$ N; K5 d3 l: Z2 C% q! Z8 fimport swarm.activity.ScheduleImpl;
+ D# z' A  U4 l& k8 ]- ~import swarm.activity.Activity;
. P+ ~  `. T, j' r$ Iimport swarm.activity.ActionGroupImpl;% M% O4 I1 h. d/ ?5 }9 g
import swarm.collections.ListImpl;/ R# L- [$ P1 x0 E
import swarm.defobj.Zone; ) I% R" H% m% t  M
import swarm.Globals;
& [7 Y# o  a# n, Y$ [, {3 r* @import swarm.Selector;
' D! S$ c0 E! D2 ~import swarm.activity.ActionGroup; 1 ]2 @0 b' B# ?5 X; `2 F9 m
class Agent {
- Q0 P. i) @4 j& |6 F1 j1 A! e        char id;, M& G2 x& R) b" J4 S2 v0 N
% A0 n! V0 V" h- F" W" ]/ a! N1 X1 U
        Agent(char id) {
* J8 t5 d: P" S6 h7 ~4 Y1 U                this.id = id;
* \8 C' z; I3 P/ Q/ Z3 m1 u        }/ t% W8 ?1 d5 r
( e- `4 |" q: ?: D5 P, P
        public void agentStep() {
- B3 d# N5 {& H6 q                System.out.println(id + ":" + Globals.env.getCurrentTime());
% H4 B! d- t, W; c. z2 t- H! ]        }5 I' S6 F2 y4 V# t% Q
}/ ?) t/ f2 I! y
8 R# N/ b: u5 S6 Y- y. ^/ u
public class ActionGroupDemo extends SwarmImpl {5 Z9 k9 Q/ ~7 _- p" {
        ScheduleImpl schedule;0 A9 S) _# C2 _, ~. d% b
        ActionGroupImpl actionGroup;6 s: B  f& M* h; R$ g: }& A/ G0 T
        ListImpl list;
3 e1 ~; t) D) ^. |7 B$ v" j, x! S9 S& Q$ {1 @        char Id = 'a';% R7 V, s% ?( i  J# {+ S5 ?7 O% K

2 H  S% O3 Y& C        ActionGroupDemo(Zone aZone) {6 e# Y# q+ X+ X# D# T; a5 Q$ U2 f
                super(aZone);
* c7 e! h' K& m# T! z  ~! ?; u                list = new ListImpl(aZone);
$ w9 r) `" E. w( K% w- e                swarmSetp();4 [$ H# k3 N( s
                actionGroup = new ActionGroupImpl(aZone);& z+ S3 l. Z8 t- `+ G  B. y
                schedule = new ScheduleImpl(aZone);  K/ s- K; M' Y4 P$ `  P3 D' Z$ R
                try {
7 Q# U" I3 a3 E$ L4 G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& Z1 i; C8 l! a  @7 y6 v: f% c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- O+ J; Y5 `( R. `5 e" a. s                        
! N( w3 }& u2 o3 U6 T                        actionGroup.createActionForEach$message(list, agentSel);
' f9 J0 F) m" v  O9 r                        actionGroup.createActionTo$message(this, swarmSel);
6 W6 ~7 p6 Y  b- a6 P8 t7 _                        schedule.at$createAction(0, actionGroup);7 E, x  O) L, T2 U& E' g
                        schedule.at$createAction(1, actionGroup);- s! Q& M; {/ u& M2 V" F# z
                        schedule.at$createAction(2, actionGroup);
% k) J# I9 ~, N; E+ b7 a( \) y2 J3 ?4 L% _2 s$ I7 M
                } catch (Exception e) {* s- B! e0 E) |5 u9 |: J  q
                        e.printStackTrace(System.err);
3 p4 T4 `/ T1 \6 A0 y) d9 [9 x                        //System.out.println(e);# s' Q( o, L2 c# V6 T3 `: O+ f
                        System.exit(1);
& N- Q. {* |# V. N! B$ l6 ^: R/ Q                }7 J  V* N% u8 b1 i
6 Z4 T" s7 V: I8 N) O) E

7 X# _( e) @1 U+ w4 p        }
% }  }; j5 k8 U8 r5 Y$ }% j5 c
0 A" l/ z0 B5 F, i: J        private void swarmSetp() {
# S( A' z( y! E% \0 F$ j3 y1 U                list.addLast(new Agent(Id));
: ?+ o8 X3 Y7 p/ s                Id++;* ^) q( e0 m- B/ s' W& s6 V
        }+ B. k9 s4 |0 ]8 M

4 [: q( H  Q+ w; P- A: _        public Activity activateIn(Swarm context) {( }. Y) ^( ~: I3 `8 S  r( p* h
                super.activateIn(context);. i+ \% S, P- Y5 Z  l5 k* k
                schedule.activateIn(this);
+ j; S6 e/ U2 X% r( P( Z. }                return getActivity();( ?7 M" H6 F0 i, F( [
        }
0 @7 z4 {/ o) E8 A1 {( ]2 \8 @* _! O! R8 j
        public static void main(String[] args) {
# n) f+ V- k# [8 v0 g* d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 N# o; N0 q+ d4 y3 H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; k; w' w. o' t) E+ G9 b6 [: p1 _
                swarms.buildObjects();
* n! i, D! N! C, |7 L, K; G                swarms.buildActions();6 X' L9 f* p1 y% N
                swarms.activateIn(null).run();& J6 [/ x  N! Z1 H: X
        }
$ {! J9 k  w  d1 G; {- [; s( R2 F' t6 l, G4 i7 Z! _2 i( V' o; I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 15:23 , Processed in 0.016899 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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