设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8928|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % w! q8 r1 W5 a% G$ I0 j# G

8 V% P" L6 R! H* F- o/ T7 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Z, g0 N5 N# j2 {$ Z  e5 x& b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' ^. u! P) }0 X$ F' x' H" C$ Zswarm.SignatureNotFoundException
& _/ `  h( m' ~: @* w5 v1 U: s: y5 }. o        at swarm.Selector.<init>(Selector.java:76)
) S  k1 q2 e& G2 L" F        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 `- H1 q0 s0 }; X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 K2 }( W2 z, p5 J% S4 e; J! ?+ P* o7 ]$ r; u3 X% u% w, C# _

! j0 {" W/ w. F( g0 bimport swarm.objectbase.SwarmImpl;# K* \: ?: A' }. s2 t0 D
import swarm.objectbase.Swarm;
2 w: V# Y& S3 fimport swarm.activity.ScheduleImpl;4 B: A8 M2 W( |- E" k; F
import swarm.activity.Activity;
. H( V0 w; Y' n7 eimport swarm.activity.ActionGroupImpl;1 T8 L, v. {# D* N
import swarm.collections.ListImpl;
0 h1 T) h8 F. l: w; oimport swarm.defobj.Zone;
% b0 Q6 k; E( }import swarm.Globals;/ t$ t, M2 {' K
import swarm.Selector;0 C1 F+ A3 l5 p0 T4 K6 {
import swarm.activity.ActionGroup;
. ^" ^3 V$ ~. J6 G/ P/ H. ~class Agent {' R! R1 P4 R7 H1 e- ^
        char id;+ z% }8 C" D" F2 D/ s
- f3 C4 k: M# H! ^2 d! v
        Agent(char id) {) x2 J3 C; P3 ^) g1 ?2 V$ @) s
                this.id = id;
2 ~' c( m: i3 Q! H  \8 G$ P        }
8 h4 @  H3 p- y  \5 U& t" N+ R: R
        public void agentStep() {$ W8 W1 @* f6 U+ m/ S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 H" r. K+ E; o# E- ^. T! b1 L        }4 c! H+ h) A1 H0 H% g8 s4 [8 q& m2 X; W
}- L9 n0 k! e3 b6 J

4 K0 P5 _7 Y# ~public class ActionGroupDemo extends SwarmImpl {) \! x- [! z, H, W4 |% x5 ~
        ScheduleImpl schedule;
0 ?" B2 q. A" K2 o# p        ActionGroupImpl actionGroup;9 J, f" X$ b1 Q$ n
        ListImpl list;
, p+ d6 Y  \; W- {        char Id = 'a';
* {8 e- \1 c$ b; R* k  T; N
  I8 r* }' |) V* `        ActionGroupDemo(Zone aZone) {3 Z- w  b  o& ?# z) C+ P7 g
                super(aZone);
1 ~& u8 ^9 U5 h2 Z                list = new ListImpl(aZone);* J' _3 U* o8 P; p+ A% u
                swarmSetp();2 a- e% S7 r+ M/ W
                actionGroup = new ActionGroupImpl(aZone);
/ P1 z: M5 I5 P: D& z( O                schedule = new ScheduleImpl(aZone);
  U$ q4 w3 R) y) I7 c                try {
) a. o# [0 r: ~" ?+ b* `, I% {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: i4 h. [5 Q( _+ \% D/ Q3 f' H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 U! g+ W6 U! {( d/ h$ n* {' ^' N4 I
                        
3 A% j  A/ ]; i2 q1 a' \                        actionGroup.createActionForEach$message(list, agentSel);
  K. ^1 ]% V3 V0 T                        actionGroup.createActionTo$message(this, swarmSel);) K3 R. z  {# g2 j# ?9 E
                        schedule.at$createAction(0, actionGroup);3 k; E  B% y4 H- @* n' `! ]
                        schedule.at$createAction(1, actionGroup);
) W% W  g. @* V                        schedule.at$createAction(2, actionGroup);, p4 _3 s; ~; F. v; F0 r" T
- d9 i- _: H3 q  t+ L& v
                } catch (Exception e) {
' J* k4 y4 J$ q+ v. ]                        e.printStackTrace(System.err);
& j$ ?! [! R/ R% h6 O4 N* D                        //System.out.println(e);
1 [( v6 K; U0 S" \& U1 T                        System.exit(1);' O& X6 Q" l7 v+ J7 Y
                }5 a, V! j7 f5 q5 L4 r' b  S; h

* x$ y8 U* s  L' J2 ^% J+ `0 ?
3 z0 a8 [1 l# U        }
' K& V7 \7 [1 G& e. H8 W: ]4 H8 _& |
% R) N3 A: ?9 u8 H: S" c        private void swarmSetp() {
2 a: h( S, E/ A0 c1 w) n                list.addLast(new Agent(Id));0 n# I! i1 \) X" v
                Id++;) @; H9 g5 A3 A2 y* A; W% w
        }8 T+ r  d8 t' G$ U% z
- ~, n, {; u& w$ s. B8 o5 K1 k' e6 f
        public Activity activateIn(Swarm context) {0 i6 d( Z3 l8 c, F9 Z
                super.activateIn(context);0 `& \/ m! ?4 s5 i
                schedule.activateIn(this);
7 h* R* ?$ J5 }# A                return getActivity();  H' l: b5 K; k: F9 G6 P
        }
" i7 Z1 S% N: ^5 ^) t4 M  Y# B) P& j- r- Q& V5 v
        public static void main(String[] args) {/ z5 V) ?) }9 f: H' s$ n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, z8 k. e! y: u  g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 i' }( B  u; n( l/ I' e) s
                swarms.buildObjects();3 G+ E' z/ @/ F+ h/ L
                swarms.buildActions();9 O0 S* a" U' G
                swarms.activateIn(null).run();% D9 N, c9 c& g1 v: a& x) H/ R
        }
  E+ Z3 h0 X& e* e
; c4 B1 d( O' u7 C! i* q& P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-27 00:47 , Processed in 0.019157 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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