设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5432|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 W! }7 S' @9 k* [; p

' F# N4 E; |0 D9 G& G: z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  s. n& @1 n9 l5 x1 `  {' J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# Y3 E+ h7 w6 D0 p1 K
swarm.SignatureNotFoundException6 V- X# U. u' b
        at swarm.Selector.<init>(Selector.java:76)
# V( \; r$ ~4 g  b. C6 f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- N3 Q* E2 ]. ~: ]/ N        at ActionGroupDemo.main(ActionGroupDemo.java:67)" V, K5 a6 u" k( H: K7 ~6 |# F

' T* `6 x' C/ @: R7 z
+ l& Q' X& b5 f/ W8 Fimport swarm.objectbase.SwarmImpl;# z% }+ b; ~  v$ V" }: y- ?! A) s8 z
import swarm.objectbase.Swarm;
! m& @1 a2 ?/ M, s& F) K/ Eimport swarm.activity.ScheduleImpl;5 b1 F% b. _3 K* a( s5 q
import swarm.activity.Activity;
( y% B8 w. A/ S* c" eimport swarm.activity.ActionGroupImpl;
4 j0 G; ^5 i; aimport swarm.collections.ListImpl;
3 M9 |* l4 e1 u! Z/ H9 Z* wimport swarm.defobj.Zone; $ w) G8 C$ p" Y. W1 p
import swarm.Globals;* d4 ]/ Y: R! d: a+ o
import swarm.Selector;8 B1 ]% E9 ~7 @/ k2 p
import swarm.activity.ActionGroup;
/ ~$ t+ k! g: a0 P& b+ Q- l1 |7 jclass Agent {
4 O% T3 S  x. @& X- d9 w8 b        char id;
8 _" g. X: W9 Q) F( j7 _
2 z2 R! E2 {$ C( h1 z9 z        Agent(char id) {& A8 L" `' E+ j7 b9 L! @
                this.id = id;/ f3 r) V$ h& M* R0 J  m
        }
6 ?) H  g8 V* K. C4 ^6 o9 b+ I! `# y/ y$ W& ?
        public void agentStep() {
! x' ^& p5 I7 o+ `, H( g                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 a; k7 F5 H, P. N8 @- {2 W        }: ^$ A; \, E3 q, e4 D. u3 {5 [& k
}
0 G- M8 `. i4 o  r" K* k* X) y" S$ H6 Y$ |" d
public class ActionGroupDemo extends SwarmImpl {
, H6 P9 I5 Z1 c% ^' T; q        ScheduleImpl schedule;1 G# f, D. Q) ]* Y5 K9 n* x  l
        ActionGroupImpl actionGroup;
# [( B( ^- O3 A        ListImpl list;7 \% }0 J, f, m6 c1 H) Q! T; A6 }
        char Id = 'a';3 t6 d! E4 Z8 e7 n

! f- V$ l; m/ R1 y% _: q# A. `        ActionGroupDemo(Zone aZone) {+ `$ y' o- H  ~& j7 H: F3 i
                super(aZone);  T* `5 V. X- [8 T4 l$ Y0 t
                list = new ListImpl(aZone);: E, H3 g5 ]( k" X
                swarmSetp();) x8 y8 i4 ~- D4 X: q# o5 F
                actionGroup = new ActionGroupImpl(aZone);
  m4 e# X1 U  V: X* S$ w; X                schedule = new ScheduleImpl(aZone);
# }' Q1 |. @+ N3 Y. p" C  k                try {
8 ?1 \# C+ D4 i; Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- R9 M$ ^6 b* a& s                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ |" \! b. U% f+ x  s9 a                        
; y" O  X3 _# ^8 M1 o  H  i                        actionGroup.createActionForEach$message(list, agentSel);
5 s! M7 f% }% U7 R: C                        actionGroup.createActionTo$message(this, swarmSel);
/ ~! A" n, k- I                        schedule.at$createAction(0, actionGroup);
9 [( Z  `! G/ \( A' R$ c5 i" E  p                        schedule.at$createAction(1, actionGroup);
! V2 r' T) O- E& I. g                        schedule.at$createAction(2, actionGroup);8 P4 F+ i9 J3 l# E$ `

/ |) F4 k. u1 m- H$ {+ b; N) X                } catch (Exception e) {
. r: R3 k0 i. g2 \3 P' d- B                        e.printStackTrace(System.err);
$ u& }& v9 n/ [+ u+ m                        //System.out.println(e);
! s- A; k+ D/ D# s: x; v                        System.exit(1);  h7 B! X7 i! ?  N1 K
                }& x2 k( K' D+ I% C
: O% R  ], @1 o* s% A8 g

+ M; {  v+ z1 h2 V4 _5 C        }; n* u% g  }' u. H/ n0 K

! I' V. z8 v  K. I- M        private void swarmSetp() {
$ C$ b8 s5 R* Z! i8 u                list.addLast(new Agent(Id));
. v. x" X/ o5 {. q                Id++;  W9 [6 J7 G9 t6 R( |: m- H
        }
, x9 l/ `" \) I& l2 u  r$ g, n7 B9 {
        public Activity activateIn(Swarm context) {
- A) j& c, e" r3 t, {+ z7 u                super.activateIn(context);
# |. C% k9 v8 w; ^) U4 M( S9 K                schedule.activateIn(this);' `3 I8 n- V% F, d9 X
                return getActivity();/ k* s1 M3 i* q  w$ L* f
        }
3 o7 ?; }, d% B( s+ p, l; d7 G' G1 f# M1 I
        public static void main(String[] args) {
( S9 ^3 U9 b2 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 n: C$ S( R; l3 l' s" a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  R7 W* D8 V0 _
                swarms.buildObjects();
4 l4 Q$ w% a( Y+ t9 b! K2 J                swarms.buildActions();
1 L3 N0 V* B1 _2 r+ b! S1 `) r3 F' v                swarms.activateIn(null).run();% }% R9 n* f/ V9 P5 h7 [
        }9 `% w) y4 \+ w" @4 Y9 u

: Y9 X! ^( O- I3 A, o! J1 V( {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-8 22:23 , Processed in 0.019989 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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